如何处理从application.properties配置文件获取的汉字乱码问题

平时从配置文件各种读取配置参数都正常,但是有时候放了个中文就乱码,

你肯定试过网上好多方法,都没解决,那么来看下面,恭喜你终于找这里了

这里,我们以springboot框架为例:

首先,从配置文件读取汉字乱码的真正原因

application.properties中文乱码是因为spring boot项目默认的加载配置文件application是

通过字符集ISO-8859-1载入的;

方法一

网上常说的方法如下图设置,还说前提application.properties文件编码为UTF-8

众多网友使用是有的灵验有的不灵验,也不知道为啥;

其实上述的办法就是将中文转换为Unicode码,再在idea编辑器中转换为中文。

实际存放的还是Unicode码所以对于生产的乱码,如果用这种方法,你还不如直接把汉字

转为Unicode码放进生产的配置文件里;

如何处理从application.properties配置文件获取的汉字乱码问题

方法2:

创建一个新的properties配置文件,如:business.properties,设置文件编码格式为UTF-8,

引入配置并指定字符集,注意:这种方式针对application.properties是不行的


然后在spring boot项目随便启动类或者需要的类上加上下面注解,获取的中文便不会乱码

@PropertySource(value = {
        "classpath:business.properties"
}, encoding = "UTF-8")

方法3:

将application.properties改为application.yml

建议使用方法2

上一篇:.NET 云原生架构师训练营(KestrelServer源码分析)--学习笔记


下一篇:API