java--properties集合的读取、存储

java.util.Properties; 继承HashTable
创建一个xxx.properties文件 里面写键值对键值对之间不要有空格

package cn.bufanli.iodemo;

import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Properties;
import java.util.Set;

/**
 * @author BuShuangLi
 * @date 2018/12/27
 * 集合对象 Properties ,继承Hashtable,实现Map接口
 * 可以和IO对象结合使用,实现数据的持久存储
 */
public class PropertiesDemo {
     public static void main(String[] args) throws IOException{
         // saveKV();
          //特有的方法输入流
         // uniqueMethodIn();
          //特有的方法输出流
          uniqueMethodOut();
     }
     /**
      * 使用Properties对象存储键值对
      * setProperty(String key, String value) 相当于Map中的put
      * 使用Properties对象通过键获取存储的值
      * getProperty(String key);
      */
     private static void saveKV() {
          Properties properties = new Properties();
          //使用Properties对象存储键值对
          properties.setProperty("a","1");
          properties.setProperty("b","2");
          properties.setProperty("c","3");
          System.out.println(properties);
          //使用Properties对象通过键获取存储的值
          String c = properties.getProperty("c");
          System.out.println(c);
          //方法将集合中的所有的键存储到set的集合当中
          Set<String> strings = properties.stringPropertyNames();
          for (String string : strings) {
               System.out.println(properties.getProperty(string));
          }
     }
     /**
      * Properties特有的方法
      */
     private static void uniqueMethodIn() throws IOException {
          //创建Properties集合对象
          Properties properties = new Properties();
          //创建文件输入流对象给出数据源
          FileReader fileReader = new FileReader("f:\\a.properties");
          //传递任意字符或者字节输入流 流对象读取文件的键值对存储到properties集合当中
          properties.load(fileReader);
          //关流
          fileReader.close();
          //遍历properties集合对象
          Set<String> strings = properties.stringPropertyNames();
          //遍历
          for (String string : strings) {
               System.out.println(properties.getProperty(string));
          }
     }

     /**
      * Properties特有的方法
      */
     private static void uniqueMethodOut() throws IOException{
          //创建Properties集合对象
          Properties properties = new Properties();
          //存入一些键值对
          properties.setProperty("name","李四");
          properties.setProperty("age","18");
          properties.setProperty("money","12222222");
          //创建文件输入流对象给出数据源
          FileWriter fileReader = new FileWriter("f:\\a.properties");
          properties.store(fileReader,"zhongwen");
          //关流
          fileReader.close();
     }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值