转载自 关于java.util.Properties读取中文乱码的正确解决方案(不要再用native2ascii.exe了)

碰到了用java.util.Properties读取中文内容(UTF-8格式)的配置文件,发生中文乱码的现象,

Properties prop=new Properties();
prop.load(Client.class.getClassLoader().getResourceAsStream("config.properties"));  

习惯性google了一下,网上大多数文章都是让大家用native2ascii.exe转换 这样的解决方案,一开始还差点被懵住了,以为只能使用这样的绕弯子方法。。。

但关键是,太绕了! 如果每次都用native2ascii.exe将中文转换成\uXXXX\uXXXX这样的,麻烦先不说,转换完后的文件完全不可读!!!这基本上是不可忍受的!
(虽然也能用native2ascii.exe转换回来,但同样,麻烦!)

冷静下来后,突然想起来,还是初学java时看过,java.io包中 Reader/Writer和Stream的区别。
(年代久远,具体细节忘记了,大概是:Reader/Write是处理编码文本的,而InputStream/OutputStream只把数据当作2进制流 )

正确解决方案

Properties prop=new Properties();
prop.load(new InputStreamReader(Client.class.getClassLoader().getResourceAsStream("config.properties"), "UTF-8"));  

其中“UTF-8”,用于明确指定.properties文件的编码格式(不指定则默认使用OS的,这会造成同一份配置文件同一份代码,在linux和windows上、英文windows和中文windows之间的表现都不一致),这个参数应该和具体读取的properties文件的格式匹配。

Java读取properties配置文件时,中文乱码解决方法相关推荐

  1. java 配置文件乱码_java程序读取properties配置文件出现中文乱码

    这个问题有两种办法: 第一种办法:如楼上所说的那样也可以,就是native2ascii -reverse -encoding gb2312 user.properties ActionName_zh_ ...

  2. Springboot解决IDEA读取properties配置文件的中文乱码问题

    参考: https://blog.csdn.net/White55kai/article/details/71194664 一.尝试在application.properties中添加配置: spri ...

  3. 解决Spring boot中读取属性配置文件出现中文乱码的问题

    解决Spring boot中读取属性配置文件出现中文乱码的问题 参考文章: (1)解决Spring boot中读取属性配置文件出现中文乱码的问题 (2)https://www.cnblogs.com/ ...

  4. spring使用@Value标签读取*.properties文件的中文乱码问题的解决

    spring使用@Value标签读取*.properties文件的中文乱码问题的解决 参考文章: (1)spring使用@Value标签读取*.properties文件的中文乱码问题的解决 (2)ht ...

  5. Spark读取日志文件集中文乱码解决方法

    Spark读取日志中文乱码解决方法 问题展示 ���� 一般来说,这个问题多出现于GBK与UTF-8编码互相转换时.众所周知,GBK编码是windows系统的编码格式,而UTF-8是linux系统的编 ...

  6. java ios乱码_iOS发送邮件及其中文乱码解决方法

    引 要我说呀,你如果不曾碰到奇奇怪怪的需求都不好意思说你是个程序猿.最近我碰到了,所以才有这篇文章,记录一下过程中遇到的问题. 这篇文章是记录一下我是如何在iOS端实现自动发送邮件功能的.某个应用场景 ...

  7. C# .net中cookie值为中文时的乱码解决方法

    C# .net中cookie值为中文时的乱码解决方法 一.cookie的名称或子cookie的名称不能为中文,否则无法获得cookie 这个好办,名称不用中文即可 二.cookie的值为中文时候,取c ...

  8. 读取properties文件,中文乱码

    读取properties文件,中文乱码 在线编码转换Native/ASCII      http://tool.oschina.net/encode?type=3

  9. Java的各种中文乱码解决方法

    Java的各种中文乱码解决方法 参考文章: (1)Java的各种中文乱码解决方法 (2)https://www.cnblogs.com/Survivalist/p/9015754.html 备忘一下.

最新文章

  1. 安装部署VMware vSphere 5.5文档 (6-1) 配置IBM DS4700 共享存储
  2. Java设计模式教程
  3. virtualbox增强功能无法粘贴_Revit2020我眼中的十大新功能
  4. locky勒索样本分析
  5. C++11 POD 类型
  6. 电容式传感器位移性能试验报告_称重传感器的构成
  7. 【CAN】CAN的比特率和波特率
  8. 机器学习算法工程师笔试及面试总结
  9. 一篇论文的正确格式是什么?
  10. 《商君列传第八》–读书总结
  11. “chmod 777-R 文件名”什么意思?
  12. SSM框架和SpringBoot框架的对比
  13. 碳监测能源消耗监测管理系统_碳排放在线监测管理系统_碳管理平台
  14. 非机动车检测数据集(用于训练目标跟踪)
  15. python字典及嵌套遍历
  16. 【雕爷学编程】Arduino动手做(85)---LCD1602液晶屏模块
  17. mqtt 传文件断开连接的原因_mqtt服务器连上就断开
  18. nexus7由Ubuntu刷回原厂安卓系统
  19. 小学计算机修饰段落教案,小学信息技术《修饰文字》的优秀教学设计
  20. echars 柱状图正常状态 --》二次封装

热门文章

  1. leetcode637. 二叉树的层平均值(层序遍历04)
  2. 初探react,用react实现一个todoList功能
  3. C++ 多态实现的三个条件
  4. 天梯赛模拟 链表去重 (25 分)
  5. ReentrantLock可重入锁使用及原理
  6. 2021牛客暑期多校训练营6 :D Gambling Monster 期望dp + fwt + cdq分治
  7. Codeforces Round #619 (Div. 2) F. Super Jaber 多源bfs + 思维转换
  8. Educational Codeforces Round 81 (Rated for Div. 2) C. Obtain The String 序列自动机
  9. CF741D Arpa’s letter-marked tree and Mehrdad’s Dokhtar-kosh paths 树启 + 状压
  10. 线段树——思维(Codeforces 339D Xenia and Bit Operations/Billboard HDU - 2795)