Java Properties:解决中文乱码与顺序读写的攻略
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
“JavaProperties解决中文乱码和顺序读写” Java中的`Properties`类是Java.util包中的一个关键类,主要用于处理配置文件,尤其是`.properties`格式的文件。这种文件通常用于存储应用的配置信息,因为它们易于读写且结构清晰。`Properties`类继承自`Hashtable`,提供了一系列方法来管理和操作配置数据。 1. `Properties`类的主要方法: - `load(InputStream inStream)`:从输入流中加载属性列表,读取配置文件并将键值对存储到`Properties`对象中。 - `getProperty(String key)`:根据给定的键查找并返回对应的值。 - `setProperty(String key, String value)`:设置键值对,相当于`Hashtable`的`put`方法。 - `remove(String key)`:删除指定键的键值对。 - `store(OutputStream out, String comments)`:将`Properties`对象中的键值对写入到输出流,可以是文件或其他形式的输出。 - `clear()`:清除所有键值对。 2. 读取`.properties`文件的方法: - 使用`Class.getResourceAsStream(String name)`:这种方法可以基于类路径读取资源文件,适合在类路径下存放的配置文件。 - 使用`FileInputStream`:直接打开文件系统中的文件,更适用于文件系统的配置文件读取。 例如,以下是一个简单的读取`.properties`文件的例子: ```java Properties props = new Properties(); InputStream in = MyClass.class.getResourceAsStream("/config.properties"); props.load(in); String value = props.getProperty("myKey"); System.out.println(value); in.close(); ``` 在这个例子中,`MyClass.class.getResourceAsStream("/config.properties")`会根据`MyClass`类的类路径查找`config.properties`文件,并返回一个`InputStream`,然后`Properties`类的`load`方法读取流中的内容。 在处理包含中文字符的`.properties`文件时,可能会遇到乱码问题。这是因为默认的编码不一定是UTF-8,而可能是ISO-8859-1。为了解决这个问题,可以在读取文件时指定编码,如: ```java InputStream in = new FileInputStream("config.properties"); Properties props = new Properties(); props.load(new InputStreamReader(in, StandardCharsets.UTF_8)); ``` 此外,`Properties`类在写入文件时也会按照特定的顺序,如果希望保持键的顺序不变,可以使用`Properties`的子类`LinkedProperties`,它继承了`Properties`并保持键的插入顺序。 总结来说,`Java Properties`类是Java应用程序处理配置文件的重要工具,它提供了丰富的功能来读写键值对,同时处理中文字符和保持键的顺序,使得配置文件的管理更加便捷。
![](https://csdnimg.cn/release/download_crawler_static/85786911/bg3.jpg)
剩余12页未读,继续阅读
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/ac8b9680820940e7ac9d0c7be554f725_weixin_44609920.jpg!1)
- 粉丝: 243
- 资源: 1940
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- Hadoop生态系统与MapReduce详解
- MDS系列三相整流桥模块技术规格与特性
- MFC编程:指针与句柄获取全面解析
- LM06:多模4G高速数据模块,支持GSM至TD-LTE
- 使用Gradle与Nexus构建私有仓库
- JAVA编程规范指南:命名规则与文件样式
- EMC VNX5500 存储系统日常维护指南
- 大数据驱动的互联网用户体验深度管理策略
- 改进型Booth算法:32位浮点阵列乘法器的高速设计与算法比较
- H3CNE网络认证重点知识整理
- Linux环境下MongoDB的详细安装教程
- 压缩文法的等价变换与多余规则删除
- BRMS入门指南:JBOSS安装与基础操作详解
- Win7环境下Android开发环境配置全攻略
- SHT10 C语言程序与LCD1602显示实例及精度校准
- 反垃圾邮件技术:现状与前景
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)