一、使用方法
1、Class.getResourceAsStream(String path)
path:不以‘/’开头默认是从此类所在的包下取资源
以'/'开头则是从ClassPath根目录下获取
2、Class.getClassLoader.getResourceAsStream(String path)
默认从ClassPath根目录下获取,不能以‘/’开头
二、示例
目录结构:
方法一示例:
读取a.properties文件内容
package com.learn.getresource;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public class GetResource {
public static void main(String[] args) throws IOException {
InputStream is = GetResource.class.getResourceAsStream("/a.properties");
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
System.out.println(br.readLine());
}
}
读取b.properties文件内容
package com.learn.getresource;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public class GetResource {
public static void main(String[] args) throws IOException {
InputStream is = GetResource.class.getResourceAsStream("b.properties");
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
System.out.println(br.readLine());
}
}
方法二示例:
读取a.properties文件内容
package com.learn.getresource;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public class GetResource {
public static void main(String[] args) throws IOException {
InputStream is = GetResource.class.getClassLoader().getResourceAsStream("a.properties");
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
System.out.println(br.readLine());
}
}
读取b.properties文件内容
package com.learn.getresource;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public class GetResource {
public static void main(String[] args) throws IOException {
InputStream is = GetResource.class.getClassLoader().getResourceAsStream("com/learn/getresource/b.properties");
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
System.out.println(br.readLine());
}
}