0
点赞
收藏
分享

微信扫一扫

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

承蒙不弃 2022-12-07 阅读 73


 问题描述

​.properties​​的配置文件中有中文时,读取出来的总是乱码。比如我的​​application.properties​​配置文件的内容如下:

server.port=9090
test.msg=你好:Springboot

​test.msg​​值时总是会得到乱码,默认是以​​ISO-8859-1​​的字符编码读取,尝试的方法有:

1、添加配置

banner.charset=UTF-8
server.tomcat.uri-encoding=UTF-8
spring.http.encoding.charset=UTF-8
spring.http.encoding.enabled=true
spring.http.encoding.force=true
spring.messages.encoding=UTF-8

2、设置文件类型

​application.properites​​的文件类型修改为​​UTF-8​​的编码类型。

通过以上方法​​测试​​获取出来的值还是乱码。

· 解决办法

​File Encodings​​的​​Transparent native-to-ascii conversion​​为​​true​​,具体步骤如下:依次点击

File -> Settings -> Editor -> File Encodings

​Properties Files (*.properties)​​下的​​Default encoding for properties files​​设置为​​UTF-8​​,将​​Transparent native-to-ascii conversion​​前的勾选上。

这是网上最多的一种解决方案,但是在eclipse下开发的话,会发现根本就找不到对应的Transparent native-to-ascii conversion设置选项。

那么在eclipse下如何解决Spring boot读取配置文件出现中文乱码的问题呢?

Transparent native-to-ascii conversion设置的作用,中文翻译是透明native-to-ascii转换。

     分析是eclipse中的属性文件都会转化为ascii码再去被解析。

     百度搜索,eclipse中怎么设置properties文件的Transparent native-to-ascii conversion

     得到:

  在eclipse中安装properties插件PropertiesEditor及设置(附图),ASCII码转换成中文

    推荐使用里面的离线安装。

    安装完成PropertiesEditor 插件后,使用该编辑器重新编辑属性文件中的中文,然后重新运行程序,

    发现读取的中文配置文件不是乱码了。



举报

相关推荐

0 条评论