java.util.Properties 汇合 extends Hashtable<k,v> implements Map<k, v>
惟一和 IO 流联合的汇合
能够应用 Properties 中 store 办法,把汇合中的长期数据,长久化写入到硬盘中存储
应用 Properties 中 load 办法,把硬盘中保留的文件(键值对),读取到汇合中应用
属性列表中每个键及其对应值都是一个字符串(泛型都是 String)
Properties 是一个双列汇合,key 和 value 默认都是字符串
public static void main(String[] args) {show01();
}
private static void show01() {Properties prop = new Properties();
prop.setProperty("cc", "168");
prop.setProperty("zz", "167");
prop.setProperty("qq", "166");
// 相当于 setKey,将所有的 key 值放入一个 Set 汇合内
Set<String> set = prop.stringPropertyNames();
for (String s : set) {System.out.println(s);
// 相当于 getKey 获取到键对应的值
System.out.println(prop.getProperty(s));
}
}
字符流能够写中文,字节流不能写中文
store 办法:
应用步骤:
- 创立 Properties 汇合对象,增加数据
- 创立字节 / 字符输入流对象,构造方法中绑定要输入的目的地
- 应用 Properties 汇合的 store 办法,把汇合中的长期数据,长久化写入到硬盘中存储
- 开释资源
public static void main(String[] args) throws IOException {show01();
show02();}
private static void show02() throws IOException {Properties prop = new Properties();
prop.setProperty("cc", "168");
prop.setProperty("zz", "167");
prop.setProperty("qq", "166");
FileWriter fw = new FileWriter("E:\\A JI\\program\\java\\f.txt");
prop.store(fw, "save data");
fw.close();}
load 办法:
应用步骤:
- 创立 Properties 汇合对象
- 应用 Properties 汇合的 load 办法读取保留键值对的文件
- 遍历 Properties 汇合
留神:
- 存储键值对的文件中,键与值默认的连贯符号能够应用 =, 空格(其余符号)
- 存储键值对的文件中,可应用 # 进行正文,被正文的键值不会被读取
- 存储键值对的文件中,键与值默认都是字符串,不必再加引号
public static void main(String[] args) throws IOException {show03();
}
private static void show03() throws IOException {Properties prop = new Properties();
prop.load(new FileReader("E:\\A JI\\program\\java\\f.txt"));
Set<String> set = prop.stringPropertyNames();
for (String s : set) {System.out.println(s + "=" + prop.getProperty(s));
}
output:cc=168
zz=167
qq=166