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=168zz=167qq=166