【IO编程】9.Properties类
2021/7/21 17:13:46
本文主要是介绍【IO编程】9.Properties类,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1. 基本介绍
-
该类专门用于读写配置文件的集合类
-
配置文件的格式为:
键=值
键=值 -
键值对不需要有空格,值不需要用引号""包裹,默认的类型是String
2. Properties介绍
- 构造方法
- Properties()
- 成员方法
- void load(InputStream in)
- 以字节流方式加载配置文件
- void load(Reader in)
- 以字符流方式加载配置文件
- void list(PrintStream out)
- 将数据以字节流输出到指定设备中
- void list(PrintWriter out)
- 将数据以字符流输出到指定设备中
- String getProperty(String key)
- 根据键获取值
- String getProperty(String key, String defaultValue)
- 根据键获取值,并可指定默认值,如果配置文件中没有该数据就使用默认值
- Object setProperty(String key, String value)
- 设置键值对,如果有key就是修改,没有就是创建
- void store(Writer writer, String comments)
- 将Properties对象中的键值对存储到配置文件中。在idea中,保存信息到配置文件时,如果含有中文会存储为unicode码
- void load(InputStream in)
案例:
- 初始application.properties配置文件
username=admin password=123456
- 以下代码对配置文件进行读取以及写入等操作。
@Test public void readProperties1() throws IOException { Properties properties = new Properties(); properties.load(new FileReader("src\\main\\resources\\application.properties")); System.out.println("--------显示所有键值对--------"); properties.list(System.out); System.out.println("-----根据key获取value的值-----"); System.out.println("username=" + properties.getProperty("username")); System.out.println("password=" + properties.getProperty("password")); System.out.println("---------修改value值---------"); properties.setProperty("password", "111111"); System.out.println("password=" + properties.getProperty("password")); System.out.println("----------新建键值对----------"); properties.setProperty("charset", "gbk"); System.out.println("charset=" + properties.getProperty("charset")); System.out.println("---------保存配置文件---------"); properties.store(new FileWriter("src\\main\\resources\\application.properties"), null); System.out.println("保存成功"); }
- 代码运行后的application.properties配置文件
#Wed Jul 21 13:55:45 CST 2021 password=111111 charset=gbk username=admin
这篇关于【IO编程】9.Properties类的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-27消息中间件底层原理资料详解
- 2024-11-27RocketMQ底层原理资料详解:新手入门教程
- 2024-11-27MQ底层原理资料详解:新手入门教程
- 2024-11-27MQ项目开发资料入门教程
- 2024-11-27RocketMQ源码资料详解:新手入门教程
- 2024-11-27本地多文件上传简易教程
- 2024-11-26消息中间件源码剖析教程
- 2024-11-26JAVA语音识别项目资料的收集与应用
- 2024-11-26Java语音识别项目资料:入门级教程与实战指南
- 2024-11-26SpringAI:Java 开发的智能新利器