Java笔记——资源配置文件的存储与读取

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);      // 读取失败,配置文件中没有该信息,获取到指定的默认值
    }
}

你可能感兴趣的:(JAVA学习)