java中的Properties集合

定义

java.util.Properties extends HashTable(被HashMap取代) extends Map

Properties表示一个持久的属性集,可保存在流中或从流中加载,是唯一和IO流相结合的集合

Properties是一个双列集合,key和value默认都是字符串

常用方法

public Object setProperty(String key, String value) : 保存一对属性。 (put)

public String getProperty(String key) :使用此属性列表中指定的键搜索属性值。(get)

public Set stringPropertyNames() :所有键的名称的集合。(keySet)

store方法

使用store方法,把集合中的临时数据,持久化写入到硬盘中存储

void store(OutputStream out, String comments) 

void store(Writer writer, String comments)

参数:OutputStream out:字节输出流,不能写中文

           Writer writer:字符输出流,可以写中文

           String comments:注释,用来解释说明保存的文件是做什么用的(不能使用中文,会产生乱码,默认是Unicode编码,一般使用空字符串)

使用步骤:

    1、创建Properties集合对象,添加数据;

    2、创建字节/字符输出流对象,构造方法中绑定要输出的目的地

    3、使用Properties集合中的方法store,把集合中的临时数据,持久化写入到硬盘中存储

    4、释放资源

load方法

使用load方法,把硬盘中保存的文件(键值对),读取到集合中使用

void load(InputStream inStream):字节输入流,不能读取含有中文的键值对

void load(Reader reader):字符输入流,能读取含有中文的键值对

使用步骤:

    1、创建Properties集合对象

    2、使用Properties集合对象中的方法load读取保存键值对的文件

    3、遍历Properties集合对象

注意:

    1、存储键值对的文件中,键与默认值的连接符号可以使用=、空格(其他符号)

    2、存储键值对的文件中,可以使用#进行注释,被注释的键值对不会再被读取

    3、存储键值对的文件中,键与值默认都是字符串,不用再加引号

你可能感兴趣的:(java中的Properties集合)