淇℃伅 Tomcat日志乱码的原因与解决方法

2019-09-28  本文已影响0人  衣忌破

相信不少朋友会在初始安装后启动tomcat服务器,tomcat打印的日志会出现乱码现象。如下图所示

图片.png

下面是几个解决该问题的方法:

一 改tomcat的配置文件

  1. 在tomcat的安装目录下找到logging.properties文件,其路径如下:
D:\software4code\apache-tomcat-8.5.45\conf
  1. 在该文件中找到
    java.util.logging.ConsoleHandler.encoding这个属性并从原来的UTF-8改为GBK。
图片.png
  1. 重启tomcat,可见乱码问题得到解决。
    @Test
    public void testTranseCharacter() throws Exception{
      String str = "信息";
      byte[] bytes_gbk = str.getBytes("GBK");
      byte[] bytes_u8 = str.getBytes("UTF-8");
      
      String strU8toGBK = new String(bytes_u8,"GBK");//用GBK去解U8编码
      System.out.println("strU8toGBK: "+strU8toGBK);
      String strGBKtoU8 = new String(bytes_gbk,"UTF-8");//用U8去解GBK编码
      System.out.println("strGBKtoU8: "+strGBKtoU8);
    }

strU8toGBK: 淇℃伅
strGBKtoU8: ��Ϣ

在打印结果中出现了熟悉的“淇℃伅”,可见出现问题的原因正是前文所猜测的。

乱码是因为编码和解码时所使用的编码格式不一致所引起,那么可不可以在不修改配置文件的情况下,通过修改系统或命令行的编码格式为UTF-8使其与tomcat的日志初始时所采用的UTF-8一致去解决乱码问题呢?按照此思路下文通过修改命令行编码和系统编码尝试解决该乱码问题。

二 改命令行编码

没效

三 改系统编码

图片.png

日志如下:

图片.png

可见乱码问题得到解决。

使用gbk作为编码的软件中文会出现乱码的情况。

图片.png
上一篇 下一篇

猜你喜欢

热点阅读