Java 配置文件在Windows服务器上没有换行且中文乱码的问题

Java 配置文件在Windows服务器上没有换行且中文乱码的问题

问题

公司的一个老系统部署在一台系统为window server 2008 r2 的服务器上的,前几天改了一下系统的配置文件去服务器上部署,结果发现配置文件打开后中文是乱码的,而且没有换行,全部都跑到一行去了。

乱码示例

分析解决

首先将这些有问题的配置文件从服务器复制到本地电脑上查看,发现都没有问题,显示也是正常有换行的,然后我想是不是因为服务器比较老旧,不能解析这个配置文件,于是用文本编辑器对配置文件的每个字符进行查看对比,结果发现这个配置文件的行尾换行符都是使用的LF换行,window一般都是使用CRLF换行,于是将换行符都改成CRLF换行后再放到服务器上查看就显示正常了。

至于乱码问题,发现是因为IDEA的这个配置选项导致的,这个配置选项会将配置文件中的非ASCII字符转换为ASCII字符,比如配置文件中有一个“中”字,那么IDEA会自动以\u4e2d字符存储,所以在文本编辑器上打开就是以Unicode编码形式显示的了。

IDEA配置选项

posted @ 2023-06-05 17:22  王希知  阅读(82)  评论(0编辑  收藏  举报