我在Windows 7中使用tomcat 6.0.32。 在一个非常简单的servlet中,在init方法中,我正在打印:
System.out.println(Charset.defaultCharset());
输出结果为:
windows-1253
据我所知,这是tomcat在JVM中的启动方式,因为我在独立的java类中打印相同的内容,并且我将“UTF8”作为响应。
那么,如何将其更改为UTF-8?
感谢
答案 0 :(得分:39)
只需在TOMCAT / bin目录中创建一个 setenv.bat 文件,其中包含以下内容:
set "JAVA_OPTS=%JAVA_OPTS% -Dfile.encoding=UTF8"
答案 1 :(得分:14)
答案 2 :(得分:6)
对于作为Windows服务运行的Tomcat,%JAVA_OPTS%和setenv.bat都不适用于我的情况。
我在注册表中设置选项“-Dfile.encoding = UTF8”:
“HKEY_LOCAL_MACHINE \ SOFTWARE \ Apache Software Foundation \ Procrun 2.0 \ tomcatstackTomcat \ Parameters \ Java - > Options *
然后它有效。
答案 3 :(得分:2)
尝试将(Windows)环境变量JAVA_TOOL_OPTIONS
设置为-Dfile.encoding=UTF-8
并启动Tomcat Server
。
将从此链接获得更多想法: Setting the default Java character encoding