补充:Properties
.Properties:属性集合
.特点
- 存储属性名和属性值
- 属性名和属性值都是字符串类型
- 没有泛型
- 和流有关
继承了HashTable,是一个线程安全的集合。
小案例:
package com.iopractise; import java.io.File; import java.io.FileNotFoundException; import java.io.PrintWriter; import java.util.Properties; import java.util.Set; /** * 演示Propertise集合的使用 */ public class Demo21 { public static void main(String[] args) throws FileNotFoundException { //1.创建集合 Properties properties = new Properties(); //2.添加数据 properties.setProperty("username","zhangsan"); properties.setProperty("age","20"); System.out.println(properties); //3.遍历 //3.1 keySet //3.2 entrySet //3.3 stringPropertyNames() Set<String> stringSet = properties.stringPropertyNames(); for (String keyPro : stringSet) { System.out.println(keyPro+"======="+properties.getProperty(keyPro)); } //4.和流有关的一些操作 //-----------list方法------------- PrintWriter printWriter = new PrintWriter("d:\\print.txt"); properties.list(printWriter); printWriter.close();//关闭资源 } }
运行结果:打开print.txt文件
-- listing properties --
age=20
username=zhangsan
小案例:
package com.iopractise; import java.io.*; import java.util.Properties; import java.util.Set; /** * 演示Propertise集合的使用 */ public class Demo21 { public static void main(String[] args) throws IOException { //1.创建集合 Properties properties = new Properties(); //2.添加数据 properties.setProperty("username","zhangsan"); properties.setProperty("age","20"); System.out.println(properties); //3.遍历 //3.1 keySet //3.2 entrySet //3.3 stringPropertyNames() Set<String> stringSet = properties.stringPropertyNames(); for (String keyPro : stringSet) { System.out.println(keyPro+"======="+properties.getProperty(keyPro)); } //4.和流有关的一些操作 //-----------store方法------------ FileOutputStream fos = new FileOutputStream("d:\\store.properties"); properties.store(fos,"注释"); fos.close();//关闭资源 } }
运行结果:打开store.properties文件
#\u6CE8\u91CA
#Sat Feb 06 17:36:40 CST 2021
age=20
username=zhangsan
加载方法的使用(这个在实际项目中使用的比较多),小案例:
package com.iopractise; import java.io.*; import java.util.Properties; import java.util.Set; /** * 演示Propertise集合的使用 */ public class Demo21 { public static void main(String[] args) throws IOException { //-----------load方法加载----------- Properties properties2 = new Properties(); FileInputStream fis = new FileInputStream("d:\\store.properties"); properties2.load(fis); fis.close(); System.out.println(properties2.toString()); } }
运行结果:
{age=20, username=zhangsan}