0

我正在使用 Scanner scanner = new Scanner(inputStream, "UTF-8"); 读取 XML 文件 然后使用scanner.nextLine()逐行进行。

我在阅读的 XML 文件中有一些 UTF-8 类型的文本,当我通过 Eclipse Helios IDE 中的 Jetty 服务器在本地运行我的应用程序时,它可以完美运行。

但是,当应用程序在我们用作开发服务器的 tomcat 服务器上构建和部署时,UTF-8 字符显示为“?” 到处。当我将一些日志放在适当的位置时,尽管我在初始化扫描仪时提到了 UTF-8,但我发现字符是以这种方式读取的。

我无法理解为什么它会在本地为我工作,但当我将它部署在 tomcat 上时却不行。

我相信很多人以前可能遇到过这种情况。

4

1 回答 1

2

您确定您已将tomcat 配置为显示utf-8 吗?

您是否配置了显示它的页面?这里有一个很好的方法How to get UTF-8 working in Java webapps?

另外,您是否在 catalina.sh 中将默认文件编码设置为 utf-8?

-Dfile.encoding=UTF-8"

http://www.redleopard.com/2008/12/utf-8-on-tomcat/

我不希望它在不配置的情况下正确记录 utf-8。

于 2012-07-17T22:13:12.617 回答