package cn.com; import java.io.*; import java.util.Properties; //Properties的使用 //1 Properties里面存放的是键值对,用于存放属性值 //2 Properties实现了Map接口 public class Test3 { public static void main(String[] args) throws Exception { System.out.println("1 输出JVM系统的信息………………………………"); Properties pro1 = System.getProperties(); pro1.list(System.out); System.out.println("2 Properties的值的添加和保存值文件……………………"); Properties pro2 = new Properties(); pro2.setProperty("小米", "22岁"); pro2.setProperty("大米", "32岁"); pro2.setProperty("白米", "52岁"); pro2.list(new PrintStream("F:\\pro.txt")); System.out.println("3.1 将本地Properties文件加载到Properties集合 此为方法一…………"); Properties pro3 = new Properties(); FileReader fr = new FileReader("F:\\pro.txt"); BufferedReader br = new BufferedReader(fr); String tempLine = null; while ((tempLine = br.readLine()) != null) { if (tempLine.contains("=")) {//第一行为"-- listing properties --"不需要 String proArray[] = tempLine.split("="); pro3.setProperty(proArray[0], proArray[1]); } } System.out.println(pro3.getProperty("小米"));//测试新的properties System.out.println("3,2 将本地Properties文件加载到Properties集合 此为方法二…………………"); Properties pro4=new Properties(); pro4.load(br); System.out.println(pro3.getProperty("大米"));//测试新的properties System.out.println("4 修改Properties文件中的值…………………………"); Properties pro5=new Properties(); FileReader fileReader = new FileReader("F:\\pro.txt"); BufferedReader bufferedReader = new BufferedReader(fileReader); FileOutputStream fos=new FileOutputStream("F:\\pro.txt"); pro5.load(bufferedReader); pro5.setProperty("小米", "100");//注意这里只是把Properties里的值修改了,还未修改文件里的值,所以要存回文件 pro5.store(fos, "new properties");//将结果存回文件 fos.close(); System.out.println(pro5.getProperty("小米"));//测试新的properties } }