Properties详解

在讲解properties类时,我们首先要清楚一个概念:

什么是Properties文件?

你可能不知道properties文件,但你一定知道txt文件

txt文件是一种后缀为. txt的文本文件,是微软在操作系统上附带的一种文本格式,是最常见的一种文件格式

properties文件是一种后缀为.properties的文本文件,在Java中常被用作配置文件

这种文件以**<key(键),value(值)>**的格式来存储内容/参数配置,Java中可以使用Properties类来读取这个文件

Properties类

Properties类存在于Java.util.Properties包下,就像上面所说的一样,该类的主要作用是读取Java的properties配置文件

在API中如下所示:

汉化版如下:

好,现在我们知道了:

  • properties是一种文件
  • Properties类是Java中用来处理properties文件的类

那么我们该如何用Properties类来处理properties文件呢?

Properties文件处理

我们要处理properties文件就要用到Properties类,要用到一个类首先要干嘛?

我们需要至少一个Properties对象

代码如下:

//实例化一个Properties对象
Properties pros = new Properties();

OK,现在我们已经有了一个Properties对象,那么我们该如何用该对象往properties文件写数据呢?

不过在此之前,我们还得先想想现在有properties文件吗,好像并没有,所有我们还需要创建properties文件

在这里我们需要用到IO流异常的相关基础知识(不过俺暂时还没写,如果写了俺会挂上链接)

代码如下:

//创建一个test1.properties文件并通过文件输出流写入
FileOutputStream fos = new FileOutputStream("test1.properties");
//引入Writer,可以明确该输出流的字符集,确保写入配置文件的中文编码正确(utf-8格式)
OutputStreamWriter ops = new OutputStreamWriter(fos,"utf-8");

好,现在我们已经有了一个名为test1的properties文件,现在我们要往里面写数据了,在这里我们需要用到Properties类中的setProperty方法

该方法API如下:

代码如下:

//将需要写入的属性内容通过set方法,存入properties对象中
pros.setProperty("name","一呆");
pros.setProperty("age","18");
pros.setProperty("money","0");

现在我们已经往里面写数据了,但这个数据只是临时数据,所以我们还需要保存数据,在这里我们需要用到Properties类中的store方法

该方法API如下:

代码如下:

//调用properties的存储方法
pros.store(ops,"测试数据");

在最后,我们需要释放使用的资源,换句话说,我们需要关闭资源

代码如下:

//关闭资源
ops.close();
fos.close();

我们现在总结一下要对properties文件进行处理都要干些啥:

  1. 需要Properties对象
  2. 需要创建properties文件(通过IO流)
  3. 需要进行异常处理
  4. 需要通过Properties类中的setProperty方法往properties文件里写数据
  5. 需要通过Properties类中的store方法保存写入properties文件的数据
  6. 需要关闭资源

完整代码如下:

public class PropertiesTest {@Testpublic void propertiesTest(){//1.先实例化一个Properties对象Properties pros = new Properties();try {//2.创建一个输出流对象FileOutputStream fos = new FileOutputStream("test1.properties");//3.引入Writer,可以明确该输出流的字符集,确保写入配置文件的中文编码正确OutputStreamWriter ops = new OutputStreamWriter(fos,"utf-8");//4.将需要写入的属性内容通过set方法,存入properties对象中pros.setProperty("name","一呆");pros.setProperty("age","18");pros.setProperty("money","0");//5.调用properties的存储方法pros.store(ops,"测试数据");//6.关闭资源ops.close();fos.close();} catch (FileNotFoundException e) {e.printStackTrace();} catch (UnsupportedEncodingException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}
}

创建的properties文件如下:

这些都是基础知识,暂时先写这么多(单纯想偷懒而已)~

持续更新ing~

全网最细Properties详解(自封的)相关推荐

  1. Mybatis系列全解(五):全网最全!详解Mybatis的Mapper映射文件

    封面:洛小汐 作者:潘潘 若不是生活所迫,谁愿意背负一身才华. 前言 上节我们介绍了 < Mybatis系列全解(四):全网最全!Mybatis配置文件 XML 全貌详解 >,内容很详细( ...

  2. log4j.properties 详解与配置步骤总结

    先提供一个项目中使用log4j.properties配置 #log4j.rootLogger=WARN, stdout, file log4j.rootLogger=INFO,console,dail ...

  3. mapper命名规范_Mybatis系列全解(五):全网最全!详解Mybatis的Mapper映射文件

    封面:洛小汐 作者:潘潘 若不是生活所迫,谁愿意背负一身才华. 前言 上节我们介绍了 < Mybatis系列全解(四):全网最全!Mybatis配置文件 XML 全貌详解 >,内容很详细( ...

  4. [转]application.properties详解 --springBoot配置文件

    本文转载:http://blog.csdn.net/lpfsuperman/article/details/78287265###; # spring boot application.propert ...

  5. application.properties详解 --springBoot配置文件

    转载侵删:https://blog.csdn.net/lpfsuperman/article/details/78287265 以下为链接原文 # spring boot application.pr ...

  6. 05全局配置文件application.properties详解

    Spring Boot 提供了大量的自动配置,极大地简化了spring 应用的开发过程,当用户创建了一个 Spring Boot 项目后,即使不进行任何配置,该项目也能顺利的运行起来.当然,用户也可以 ...

  7. SpringBoot application.properties 详解

    一.配置属性的定义 1.1 我们可以在 application.properties 中添加类似如下这样简单的常量配置: my.name=张富 my.age=20 1.2 配置属性之间也可以相互引用使 ...

  8. springboot集成freemarker 配置application.properties详解

    #配置freemarker详解#spring.freemarker.allow-request-override=false # Set whether HttpServletRequest attr ...

  9. 图像处理技术:图像切割、标签、贴纸花字,超细开发详解

    上一篇:图像处理之滤镜.图文排版的开发详解中,详解了如何给应用增加图片编辑能力中的滤镜和图文排版能力,今天我们继续带来华为图像能力中五大图像编辑能力的另外三大能力:图像切割.主题标签,以及贴纸花字,相 ...

最新文章

  1. shell字符串截取方法
  2. PBRT笔记(2)——BVH
  3. Linux文件空洞与稀疏文件
  4. nifi 实现数据库到数据库之间数据同步
  5. redis——通过redis实现服务器崩溃等数据恢复
  6. python计算AA制时砍价后大家需要分摊的钱
  7. java刷机_java非智能手机能不能通过刷机安装一个安卓智能系统
  8. 微软BI 之SSRS 系列 - 解决Pie Chart 中控制标签外部显示与标签重叠的问题
  9. ~~一般哈希(数据结构)(附模板题AcWing 840 模拟散列表)
  10. 2021年,开发者们如何拥抱 5G 消息?
  11. 《UNIX/Linux网络日志分析与流量监控》实验环境下载
  12. Microsoft SQL Server 2008 All-in-One Desk Reference For Dummies 读书笔记之六
  13. python爬虫cookie池搭建_爬虫——cookies池的搭建
  14. m6000查看端口状态_中兴ZXR10 M6000维护最常用命令精要
  15. 查找与清除线程插入式木马
  16. 修复APP的BUG,热修复的知识点和大厂的相关资料汇总
  17. SSH基础:ssh首次连接的公钥认证
  18. 实现省市县的两种方式
  19. mysql 幂函数_MySQL-函数
  20. 概论_第8章_假设检验的基本步骤__假设检验的类型

热门文章

  1. paddleocr有效关闭log日志打印输出
  2. 什么是自旋锁?自旋的好处和后果是什么呢?
  3. 迎战算力黄金时代,惠普Z系列工作站焕新升级
  4. MATLAB删除字符数组中空格元素
  5. 计算机实训报告600,计算机教学实习自我鉴定范文600字
  6. Google Play 和神奇女侠是什么关系?
  7. linux1251端口,#1251 - Client does not support authentication问题解决!
  8. 机器学习 | 特征工程(数据预处理、特征抽取)
  9. web中的绝对路径和相对路径的概念及有什么区别
  10. 测试 iOS 推送证书是否可用