Java 属性文件乱码问题

属性文件乱码通常是中文乱码,在英文下通常没有这个问题。

 

 

如上图显示的,中文字符在属性文件中读取后会显示为乱码.

问题和解决

导致这个问题的主要原因是属性文件如果你不进行设置,那么将会默认使用 ISO-8859-1 字符集来存储的。

通常我们也不建议在属性文件中过多使用中文,一般来说属性文件都是一些配置,如果需要中文的配置可以存储在其他的文件中。

如果非要使用,也是可以的。

不修改字符集

在不修改字符集的情况,将中文字符使用 Unicode 来表示就可以了。

如上面的例子,使用下面的字符。

name = \u5C5E\u6027\u6587\u4EF6 Inject a value to a static field

在程序输出的时候就可以显示成中文了。

转换成 UTF-8 编码

可以把属性文件转换成 UTF-8 编码。

这个 IDEA 能够很好的帮我们进行转换。

选择文件编码,然后选择 UTF-8,然后选择后面的选项。

 

 

然后在更新过代码的属性文件中输中文。

再次运行后,我们就可以看到能够正常显示中文了。

2022-10-04_01-47-11

如上图完成修改后,就可以显示中文了。

 

https://www.ossez.com/t/java/14131

posted @ 2022-10-04 13:51  huyuchengus  阅读(107)  评论(0编辑  收藏  举报