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

Properties集合是唯一和IO流相结合的集合

  • 可以使用Properties集合中的方法store,把集合中的临时数据,持久化写入到硬盘中存储
  • 可以使用Properties集合中的方法load,把硬盘中保存的文件(键值对),读取到硬盘中使用
  • 属性列表中每一个键及其对应值都是都是一个字符串。properties集合是一个双列集合,key和value默认都是字符串

常用方法:

  • Object setProperty(String key, String value) :调用 Hashtable 的方法 put。
  • String getProperty(String key) :用指定的键在此属性列表中搜索属性。
  • Set stringPropertyNames() :返回此属性列表中的键集,其中该键及其对应值是字符串
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    
     Properties prop = new Properties();prop.setProperty("1","one");prop.setProperty("2","two");System.out.println(prop.getProperty("2"));Set<String> set = prop.stringPropertyNames();for (String s  : set) {System.out.println(s+"+"+prop.getProperty(s));}
    输出结果:
    two
    1+one
    2+two
    

    store方法

  • void store(OutputStream out, String comments) :以适合使用 load(InputStream) 方法加载到 Properties 表中的格式,将此 Properties 表中的属性列表(键和元素对)写入输出流。
  • void store(Writer writer, String comments) :以适合使用 load(Reader) 方法的格式,将此 Properties 表中的属性列表(键和元素对)写入输出字符。
    参数:
    OutputStream out 字节输出流,不能写入中文
    Writer writer 字符输出流,可以写中文
    String comments:注释,用来解释说明保存的文件是做什么的,不能使用中文,会产生乱码。一般使用空字符串。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    
    //1.创建Properties集合对象,添加数据Properties prop = new Properties();prop.setProperty("1","one");prop.setProperty("2","two");//2.创建字节流FileWriter fw = new FileWriter("E:\\Down\\1.txt");//3.使用方法store,将集合中的数据写入硬盘prop.store(fw,"save");//4.释放资源fw.close();
    文件内容:
    #save   //注释
    #Sat Dec 21 14:49:52 CST 2019   //自动添加的时间
    1=one
    2=two
    

    load方法

  • void load(InputStream inStream) :从输入流中读取属性列表(键和元素对)。
  • void load(Reader reader) :按简单的面向行的格式从输入字符流中读取属性列表(键和元素对)。
    参数:
    InputStream inStream:字节输入流,不能读取中文

注意:

  1. 存储键值对的文件中,键与值默认连接符号可以使用=,空格(其他符号)
  2. 存储键值对的文件中,可以使用#进行注释,被注释的键值对不会被读取
  3. 存储键值对的文件中,键与值默认都是字符串,不用再加引号
    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    Properties prop = new Properties();prop.load(new FileReader("E:\\Down\\1.txt"));Set<String> set = prop.stringPropertyNames();for (String s : set) {System.out.println(s+"+"+prop.getProperty(s));}
    输出结果:
    1+one
    2+two
    

谢谢你请我吃糖果

支付宝
微信

Properties集合相关推荐

  1. java io文件流序列化_Java——Properties集合,Object序列化流与反序列化流,打印流,commons-IO文件工具类...

    一.properties集合 集合对象Properties类,继承Hashtable,实现Map接口,可以和IO对象结合使用,实现数据的持久存储. 特点: Hashtable的子类,map集合中的方法 ...

  2. java中load_java之Properties集合中的方法load

    各位小伙伴们大家好在之前文章中小编介绍了java之Properties集合中的方法store,这次小编要介绍的是Properties集合中的方法load,具体如下: 可以使用Properties集合中 ...

  3. Java Store_java之Properties集合中的方法store

    各位小伙伴们大家好,在之前的文章中,小编介绍了使用Properties集合存储数据,这次小编要介绍的是Properties集合中的方法store,具体如下: 可以使用Properties集合中的方法s ...

  4. javase(Properties集合及学生对象信息录入文本中案例)

    1.Properties集合 Properties和IO流的结合使用 1 public void load(Reader reader) 2 public void store(Writer writ ...

  5. 使用Properties集合存储数据,遍历取出Properties集合中的数据

    package com.learn.demo07.Prop;import java.io.FileOutputStream; import java.io.FileReader; import jav ...

  6. Map 的Properties集合存储IO流对象

    package IODemo;import java.io.FileInputStream; import java.io.FileOutputStream; import java.util.Pro ...

  7. java基础—Properties集合

    Properties集合的基本方法 的操作: import java.util.Properties; import java.util.Set;public class PropretiesDemo ...

  8. -1-3 java集合框架基础 java集合体系结构 Collection 常用java集合框架 如何选择集合 迭代器 泛型 通配符概念 Properties 集合 迭代器...

    集合又称之为容器存储对象的一种方式 •数组虽然也可以存储对象,但长度是固定的:显然需要可变长度的容器 集合和数组的区别?                 A:长度区别                  ...

  9. java集合输入存储_Java练习IO流使用Properties集合存储数据并...

    案例: package IO; import java.io.FileWriter; import java.io.IOException; import java.util.Properties; ...

最新文章

  1. SCRUM敏捷实践—任务看板
  2. centos ipsec tunnel 配置
  3. linux命令行引导iso,如何在Linux上使用命令行从可启动ISO创建可启动USB?
  4. Java学习小代码(1)编写三个数的排序程序
  5. html5波浪线条,HTML5 svg炫酷波浪线条动画插件
  6. 【HDU - 5922】Minimum’s Revenge(思维,最小生成树变形)
  7. 智能商业20讲--曾明.听后感悟
  8. 计算机组装所需硬件,电脑组装机配置清单
  9. 数据库基本术语DDL,DML, DCL
  10. 直播预告 | NeurIPS 专场一 青年科学家专场
  11. 【机房重构】一步一步往上爬——数据库设计
  12. 为什么要在油气行业中应用 IoT?这 8 个应用场景告诉你 IoT 在油气行业中可以做什么...
  13. Julia(一)--Julia变量
  14. Shadow Caster Culling
  15. 浅谈NAT(网络地址转换)原理 + 个人的思考
  16. 论文阅读:Personalized Purchase Prediction of Market with Wasserstein-Based Sequence Matching
  17. 工信部信息技术发展司谢少锋司长高度评价华云数据“自主创新”的钻研精神
  18. BJFU 1399 警察抓小偷
  19. 据说,很多程序员都没看过这些......
  20. Windows修复白标

热门文章

  1. beautifulsoup网页爬虫解析_Python爬虫3步曲:5分钟学习用Python解析网页
  2. 使用计算机过程存在的问题,中小学教师计算机应用过程中存在的问题及解决方法...
  3. webservice发请求没有不成功也不返回什么异常_RPC是什么,看完你就知道了
  4. nmon在linux系统中的应用
  5. 房子过户给子女哪种方式最合适?买卖?赠与?继承?不看就亏大了!
  6. Hashtable几种常用的遍历方法
  7. JAVA中GridBagLayout布局管理器应用详解
  8. Node.js 安装指南
  9. 【Vue】—插槽的基本语法
  10. 【XAMPP】中mysql的admin页面打不开