Java用类加载器的5种方式读取.properties文件
1. 使用ClassLoader.getResourceAsStream()
这是最常见的一种方式,可以通过类加载器来加载.properties
文件,并返回一个InputStream
对象,可以进一步读取文件内容。
String fileName = "config.properties";
InputStream inputStream = getClass().getClassLoader().getResourceAsStream(fileName);
Properties properties = new Properties();
try {
properties.load(inputStream);
// 使用properties对象读取文件内容
String value = properties.getProperty("key");
System.out.println(value);
} catch (IOException e) {
e.printStackTrace();
}
2. 使用ClassLoader.getSystemResourceAsStream()
与第一种方式类似,只不过是通过ClassLoader.getSystemResourceAsStream()
来获取InputStream
对象。
String fileName = "config.properties";
InputStream inputStream = ClassLoader.getSystemResourceAsStream(fileName);
Properties properties = new Properties();
try {
properties.load(inputStream);
// 使用properties对象读取文件内容
String value = properties.getProperty("key");
System.out.println(value);
} catch (IOException e) {
e.printStackTrace();
}
3. 使用Class.getResourceAsStream()
通过类对象的getResourceAsStream()
方法可以加载与类相对路径的资源文件,同样返回一个InputStream
对象。
String fileName = "config.properties";
InputStream inputStream = getClass().getResourceAsStream(fileName);
Properties properties = new Properties();
try {
properties.load(inputStream);
// 使用properties对象读取文件内容
String value = properties.getProperty("key");
System.out.println(value);
} catch (IOException e) {
e.printStackTrace();
}
4. 使用Class.getResource()
与第三种方式类似,只不过是通过类对象的getResource()
方法来获取资源的URL对象,可以进一步通过URL对象获取InputStream
,并加载文件内容。
String fileName = "config.properties";
URL url = getClass().getResource(fileName);
Properties properties = new Properties();
try {
InputStream inputStream = url.openStream();
properties.load(inputStream);
// 使用properties对象读取文件内容
String value = properties.getProperty("key");
System.out.println(value);
} catch (IOException e) {
e.printStackTrace();
}
5. 使用ClassLoader.getSystemClassLoader().getResourceAsStream()
这种方式与第二种方式类似,只不过是通过ClassLoader.getSystemClassLoader()
来获取类加载器对象,然后使用getResourceAsStream()
加载资源文件。
String fileName = "config.properties";
InputStream inputStream = ClassLoader.getSystemClassLoader().getResourceAsStream(fileName);
Properties properties = new Properties();
try {
properties.load(inputStream);
// 使用properties对象读取文件内容
String value = properties.getProperty("key");
System.out.println(value);
} catch (IOException e) {
e.printStackTrace();
}
以上就是使用类加载器的5种方式读取.properties
文件的攻略。通过这些方式,我们可以方便地加载和读取配置文件的内容,提高程序的灵活性和可维护性。
注意:在使用以上方式读取.properties
文件时,需要确保文件路径正确,文件位于类路径下或指定的资源路径下。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java用类加载器的5种方式读取.properties文件 - Python技术站