java.util.Properties类 学习笔记1

学习目标: 

1、认识properties文件,理解其含义,会正确创建properties文件。 

2、会使用java.util.Properties类来操作properties文件。 

3、掌握相对路径,能正确书写一个properties文件的相对路径。 

一、认识properties文件 

1、properties文件是一个文本文件 

2、properties文件的语法有两种,一种是注释,一种属性配置。注 释前面加上#号,属性以“键=值”的方式书写一个属性的配置信息。 

3、properties文件的一个属性配置信息值可以换行,但键不可以换行。值换行用“\”表示。 

4、properties的属性配置键值前后的空格在解析时候会被忽略。 

5、properties文件可以只有键而没有值。也可以仅有键和等号而没有值,但无论如何一个属性配置不能没有键。 

测试类

import java.io.*; 
import java.util.Properties; 

/** 
* Properties类测试 
*/ 
public class TestProperties { 
public static void main(String args[]) throws IOException { 
         testProperties(); 
         test1(); 
} 

public static void testProperties() throws IOException { 
         System.out.println("------------testProperties-------------"); 
        //将properties文件加载到输入字节流中 
        InputStream is = new FileInputStream("D:\\ttt.properties"); 
        //创建一个Properties容器 
        Properties prop = new Properties(); 
        //从流中加载properties文件信息 
        prop.load(is); 
        //循环输出配置信息 

        System.out.println("我是初始化加载的ttt.properties文件");
        for (Object key : prop.keySet()) { 
             System.out.println(key + "=" + prop.get(key)); 
        } 

        //定义一个输出流 
        OutputStream os1 = new FileOutputStream("D:\\ttt.xml"); 
        OutputStream os2 = new FileOutputStream("D:\\ttt.properties"); 

         //从Properties对象导出导出到xml 
        prop.storeToXML(os1, "我从properties导出的XML配置文件"); 
        //从Properties对象导出properties文件 
        prop.store(os2, "我从properties导出的properties配置文件"); 

        is.close();   //关闭流
        os1.close(); 
        os2.close(); 

        //从xml加载配置信息,填充Properties容器 
       prop.loadFromXML(new FileInputStream("D:\\ttt.xml")); 
        //循环输出配置信息 
       System.out.println("我从导出的xml加载配置文件信息!"); 
       for (Object key : prop.keySet()) { 
            System.out.println(key + "=" + prop.get(key)); 
       } 

       //修改Properties对象,并持久化到一个文件 
      prop.put("呵呵呵", "嘎嘎嘎"); 
       OutputStream os3 = new FileOutputStream("D:\\ttt1.xml"); 
       prop.storeToXML(os3, "我从properties导出的XML配置文件"); 
       os3.close(); 
} 

/** 
* 以相对路径方式加载properties文件
* @throws IOException 
*/ 
public static void test1() throws IOException { 
       System.out.println("------------test1-------------"); 
       Properties p = new Properties();

       //使用流来加载路径
       p.load(TestProperties.class.getResourceAsStream("/stu/ttt.properties")); 
       for (Object key : p.keySet()) { 
            System.out.println(key + "=" + p.get(key)); 
       } 
    } 
}

运行结果: 

D:盘下写入的文件如下: 

 

 

 

 

呵呵,全部达到预期目标。


赞(52) 打赏
未经允许不得转载:优客志 » JAVA开发
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏