Java笔记——资源配置文件的存储与读取
2019-01-13 本文已影响0人
振礼硕晨
Java中资源配置文件的存储和读取主要使用 Properties 类,该类继承自Hashtable,因为配置文件以字符串来存储,所以该类的键值对必须是String类型。下面给出 Properties 类中常用的方法:
方法 | 简介 |
---|---|
setProperty(String key,String value) |
设置资源配置文件的项目 |
getProperty(String key) |
获取配置选项,不存在返回空 |
getProperty(String key, String defaultValue) |
获取配置选项,不存在返回后面的默认值 |
store(OutputStream out, String comments) |
以输出流的格式将资源配置保存到 .properties 文件 |
store(Writer writer, String comments) |
以字符流的格式将资源配置保存到 .properties 文件 |
storeToXML(OutputStream os, String comment) |
以输出流的格式将资源配置保存到 .xml 文件,默认是UTF-8编码 |
storeToXML(OutputStream os, String comment, String encoding) |
以输出流的格式将资源配置保存到 .xml 文件,同时指定编码格式 |
load(InputStream inStream) |
以输入流的格式,从 .properties 文件中读取资源配置信息 |
load(Reader reader) |
以字符流的格式,从 .properties 文件中读取资源配置信息 |
loadFromXML(InputStream in) |
以输入流的格式,从 .xml 文件中读取资源配置信息 |
以上是 Properties类 中常用的方法,下面举出几个实例:
实例1: 资源配置文件的存储和读取
import java.util.Properties;
public class Demo01 {
public static void main(String[] args) {
Properties pro = new Properties();
// 资源配置文件的存储
pro.setProperty("driver","oracle.jdbc.driver.OracleDriver");
pro.setProperty("url","jdbc:oracle:thin:@localhost:1521:orcl");
pro.setProperty("name","Tom");
pro.setProperty("pwd","tiger");
// 资源配置文件的读取
String name = pro.getProperty("name");
String value = pro.getProperty("value","default value");
System.out.println(name); // 读取成功,获取配置文件中的信息
System.out.println(value); // 读取失败,配置文件中没有该信息,获取到指定的默认值
}
}
实例2: 将配置信息输出到外部文件中
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;
public class Demo02 {
public static void main(String[] args) throws IOException {
Properties pro = new Properties();
// 资源配置文件的存储
pro.setProperty("driver", "oracle.jdbc.driver.OracleDriver");
pro.setProperty("url", "jdbc:oracle:thin:@localhost:1521:orcl");
pro.setProperty("name", "Tom");
pro.setProperty("pwd", "tiger");
// 资源配置文件的输出
pro.store(new FileOutputStream(new File("db.properties")), "db配置文件");
pro.storeToXML(new FileOutputStream(new File("src/others/db.xml")), "db配置文件");
}
}
实例3: 从外部文件中读取配置信息
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Properties;
public class Demo03 {
public static void main(String[] args) throws FileNotFoundException, IOException {
Properties pro = new Properties();
// 从外部文件中读取资源配置信息
// pro.load(new FileReader("db.properties"));
pro.loadFromXML(new FileInputStream("db.xml"));
// 读取配置信息
String name = pro.getProperty("name");
String value = pro.getProperty("value", "default value");
System.out.println(name); // 读取成功,获取配置文件中的信息
System.out.println(value); // 读取失败,配置文件中没有该信息,获取到指定的默认值
}
}