io流--Properties

 

Properties 是唯一一个与IO流相交互的集合Properties 类表示了一个持久的属性集。

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

特点:定死了键值对是String类型的

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

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

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

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

load(InputStream)  把指定流所对应的文件中的数据,读取出来,保存到Propertie集合中

load(Reader) 

store(OutputStream,commonts)把集合中的数据,保存到指定的流所对应的文件中,参数commonts代表对描述信息

stroe(Writer,comments);

 package com.oracle.demo01;

 

import java.util.Properties;

 

public class Demo01 {

 

  public static void main(String[] args) {

    //创建Properties集合

    Properties  pro=new   Properties();

    //向集合中存键值对

    pro.put("name", "tom");

    pro.put("age", "18");

    //取集合中数据

    String  name=pro.getProperty("name");

    String  age=pro.getProperty("age");

       System.out.println(name+"..."+age);

  }

 

将集合中内容存储到文件

分析:

1,创建Properties集合

2,添加元素到集合

3,创建流

         4,把集合中的数据存储到流所对应的文件中

stroe(Writer,comments)

store(OutputStream,commonts)

把集合中的数据,保存到指定的流所对应的文件中,参数commonts代表对描述信息

5,关闭流

 

package com.oracle.demo01;

 

import java.io.FileNotFoundException;

import java.io.FileReader;

import java.io.IOException;

import java.util.Properties;

 

public class demo02 {

 

     public static void main(String[] args) throws IOException {

         // 明确数据源

         FileReader  fr= new FileReader("D:\demo0611\pro.properties");

        //创建properties对象

         Properties  pro=new Properties();

         //从文件中将键值对读取到集合pro中

            pro.load(fr);

            System.out.println(pro);

     }

 

}

1.1                  读取文件中的数据,并保存到集合

需求:从属性集文件prop.properties 中取出数据,保存到集合中

分析:

1,创建集合

2,创建流对象

3,把流所对应文件中的数据 读取到集合中

load(InputStream)  把指定流所对应的文件中的数据,读取出来,保存到Propertie集合中

                   load(Reader) 

4,关闭流

5,显示集合中的数据

         代码演示:

package com.oracle.demo01;

 

import java.io.FileWriter;

import java.io.IOException;

import java.util.Properties;

 

public class demo03 {

public static void main(String[] args) throws IOException {

     //明确目的地

     FileWriter  fw =new FileWriter("D:\demo0611\pro.properties");

     //创建  Properties集合

     Properties pro=new Properties();

     pro.setProperty("driver", "com.mysql.jdbc.driver");

     pro.setProperty("username", "root");

     //将集合中的键值对写入到文件中

     pro.store(fw, "I do");

}

}

注意:使用字符流FileReader就可以完成文件中的中文读取操作了

原文地址:https://www.cnblogs.com/layuechuquwan/p/11458678.html