Tomcat乱码问题 catalina.bat设置为UTF-8 控制台出现乱码

1、catalina.bat中必须设置为UTF-8,如果我不设置为UTF-8,页面接收到的就是乱码了,尝试过各种UTF-8的调试,都无解,最后还是只能在catalina.bat的set "JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS%  -Dfile.encoding=UTF-8" ,加上UTF-8问题就可以解决了,但是tomcat的命令框和输出日志都是乱码

Tomcat乱码问题 catalina.bat设置为UTF-8 控制台出现乱码_第1张图片

2、如果是用编译工具,在IDEA编译器中的VM options:设置-Dfile.encoding=UTF-8,或eclipse 的设置中 改成utf-8 输出的问题可以解决。但是在windows服务器上用tomcat部署的时候,乱码解决不了。

3、在service.xml中,加上UTF-8,试过是无用的,依旧乱码。


问题原因:

windows默认编码集为GBK,由于使用startup.bat启动tomcat时,它会读取catalina.bat的代码并打开一个新窗口运行。打开的cmd默认编码可能不是utf-8,与系统编码不一致,所以导致乱码。

Tomcat乱码问题 catalina.bat设置为UTF-8 控制台出现乱码_第2张图片

解决方法:

修改cmd命令行的编码,打开注册表,找到HKEY_CURRENT_USER→Console→Tomcat(如果你改了tomcat的标题栏,这里就是你打开的命令窗口的名字),找到CodePage项,没有则创建,更改值为十进制的65001,点击确定。

Tomcat乱码问题 catalina.bat设置为UTF-8 控制台出现乱码_第3张图片

你可能感兴趣的:(tomcat)