Properties类

1.1    Properties类介绍

Properties 类表示了一个持久的属性集。Properties 可保存在流中或从流中加载。属性列表中每个键及其对应值都是一个字符串。

特点:

1、Hashtable的子类,map集合中的方法都可以用。

2、该集合没有泛型。键值都是字符串。

3、它是一个可以持久化的属性集。键值可以存储到集合中,也可以存储到持久化的设备(硬盘、U盘、光盘)上。键值的来源也可以是持久化的设备。

4、有和流技术相结合的方法。

Properties中存和取键值对代码:

import java.util.Properties;

import java.util.Set;

/*Properties方法使用

 * Properties经常用来操作keyvalue都是String类型的数据

 *   Object setProperty(String key, String value):Properties中存放keyvalue

      String getProperty(String key):根据key获取value

      Set<String> stringPropertyNames():properties中所有的key放到一个set集合中,返回这个set集合

 

 */

public class Demo02 {

    public static voidmain(String[] args) {

      //method01();

       Properties pros=new Properties();

       pros.setProperty("计算机系001","张三");

       pros.setProperty("计算机系003","李四");

       pros.setProperty("计算机系002","王五");

      

       Set<String> keys=pros.stringPropertyNames();

       for(String key : keys){

           System.out.println(key+" "+pros.getProperty(key));

       }

    }

    private static void method01(){

        Propertiespros=new Properties();

          pros.put(1,"abc");

          pros.put(2,"def");

          pros.put(3,"ghk");

         //System.out.println(pros);

          for(Object key : pros.keySet()){

              System.out.println(key+" "+pros.get(key));

          }

    }

}

1.2    读取文件中的数据保存到集合

代码演示:

import java.io.FileNotFoundException;

import java.io.FileReader;

import java.io.FileWriter;

import java.io.IOException;

import java.util.Properties;

/*

 *PropertiesIO流相结合的方法

 *   voidload(Reader reader)

 *   voidstore(Writer writer, String comments)

 

  Properties中关联的文件是有限制的

          关联配置文件(.properties),而且文件中的内容都是键值对

    key1=value1

    key2=value2

    ....

 */

public class Demo03 {

    public static voidmain(String[] args) throws IOException {

        //method01();

    }

    private static void method01()throws FileNotFoundException, IOException {

        //1.新建一个Properties集合

      Properties pros=new Properties();

      

       //2.利用FileReader关联文件

      FileReader fr=new FileReader("pro.properties");

      

       //3.pro.properties文件中键值对加载到pros集合中

      pros.load(fr); 

      System.out.println(pros); 

      fr.close();

    }

}

        

1.3    将集合中内容存储到文件

   

代码演示:

import java.io.FileNotFoundException;

import java.io.FileReader;

import java.io.FileWriter;

import java.io.IOException;

import java.util.Properties;

/*

 *PropertiesIO流相结合的方法

 *   voidload(Reader reader)

 *   voidstore(Writer writer, String comments)

 

  Properties中关联的文件是有限制的

          关联配置文件(.properties),而且文件中的内容都是键值对

    key1=value1

    key2=value2

    ....

 */

public class Demo03 {

    public static voidmain(String[] args) throws IOException {

         Properties pros=new Properties();

         pros.setProperty("sname","zhangsan");

         pros.setProperty("age", "13");

         pros.setProperty("gender","male");

         

         FileWriter fw=new FileWriter("store.properties");

         pros.store(fw, null);//第二个参数代表注释

         

         fw.close();

    }

}

猜你喜欢

转载自blog.csdn.net/viczking/article/details/80313617