Tomcat几种乱码的解决方法(淇℃伅)
作为初学者,我们在使用Tomcat的时候,可能经常会出现一些乱码的问题,虽然这些乱码不影响程序的正常运行,但是在出现一些错误的时候,在乱码的情况下寻找问题还是比较繁琐的,如果是非乱码的状态下,那么将会事半功倍,更好的解决问题。本条帖子将分享一些常见的乱码问题及其解决方法。
在解决乱码问题之前我们首先来了结一下主要原因:
首先乱码问题,主要原因,通俗的讲就是读的编码格式(比如最常见的两种中文编码UTF-8和GBK)和写的解码格式不一致,但是UTF-8的格式中一个汉字占三个Byte,而GBK格式一个汉字只占两个Byte,所以当编码与解码格式不一致时,控制台输出端识别不出来,所以只能以乱码代替。
在了解原因后,我们将输入端编码格式和输出端解码格式统一,就能很好的解决问题了。
乱码问题一(最常见):
Idea控制台的乱码问题,其原因是IDEA控制台编码格式与Tomcat不一致,解决方式如下:
找到Tomcat安装路径,依次找到conf路径下的logging,然后将encoding后面的UTF -8全部改成gbk就可以解决问题了。
乱码问题二:
通过cmd启动tomcat出现乱码,其原因是Windows的cmd的编码是GBK编码,Tomcat控制台默认输出设置为UTF-8编码,解决方式同上,改成gbk编码格式。
乱码问题三:
Request请求参数中文乱码问题:Request.getParameter()打印出来是乱码,其原因是:IDEA控制台显示编码问题,IDEA的控制台显示使用的JVM默认编码为Windows系统的GBK编码,更改JVM编码格式为UTF-8。
解决方法:
在VM option选项中加上:-Dfile.encoding=UTF-8
乱码问题四:
浏览器乱码,改浏览器编码就好了。主流的EDGE在设置里允许IE模式加载,然后在需要的页面更换编码格式。
以上就是常见的一些Tomcat乱码问题,总结的不完整的地方还请批评指正。
作者:Jans简思
转载请说明出处。