一:定义
表示一个持久的集,可以存在流中或者从流中加载。用来读取Java的配置文件,在Java中为.properties为后缀名的文本文件。
二:特点
是 Hashtable子类,map集合方法都可以用。
三: 常用的方法
getProperties(String key):通过指定的键搜索属性。
setProperties(String key,String value):相当于Hashtable中的put方法
load(InputStream inStream):方法读取属性列表(键和元素对)从输入字节流。输入流是一个简单的面向行的格式为负载器(Reader)指定的。
store(OutputStream outStream):将此属性列表(键和元素对)写入此Properties表中,以适合使用load(InputStream)方法加载到Properties表中的格式输出流。
clear() 清除所有加载。
四:实例
1、关于Properties集 添加数据 获得数据 遍历数据
1 //1关于Properties集 添加数据 获得数据 遍历数据 2 public static void fun(){ 3 Properties v=new Properties(); 4 v.setProperty("name","臧克家"); 5 v.setProperty("name1","北岛"); 6 v.setProperty("name2","舒婷"); 7 String s=v.getProperty("name"); 8 System.out.println(s); 9 //将集合中的键 存储到Set集合 10 Set<String> set=v.stringPropertyNames(); 11 for(String k:set){ 12 System.out.println(k+"....."+v.getProperty(k)); 13 } 14 }
2、Properties集合 特有的方法load(InputStream in) load(Reader r)
1 //2Properties集合 特有的方法load(InputStream in) load(Reader r) 2 //流对象读取键值对 3 public static void fun1() throws Exception{ 4 Properties p=new Properties(); 5 FileReader f=new FileReader("c:\bu1.properties"); 6 System.out.println(p); 7 p.load(f); 8 f.close(); 9 System.out.println(p); 10 }
3、存 store(OutputStream out) store(Writer w)
1 //3、存 store(OutputStream out) store(Writer w) 2 public static void fun2() throws IOException{ 3 Properties p=new Properties(); 4 p.setProperty("name", "zahngwuji"); 5 p.setProperty("age", "22"); 6 p.setProperty("email", "zahngwuji@,com"); 7 p.setProperty("adds", "zahngwuji"); 8 FileWriter f = new FileWriter("c:\a.properties"); 9 p.store(f, "0909009");//第二个参数为注释 10 f.close(); 11 }