首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Tomcat/Linux上的UTF-8和Servlet

Tomcat/Linux上的UTF-8和Servlet
EN

Stack Overflow用户
提问于 2009-04-03 15:05:38
回答 2查看 4.6K关注 0票数 2

我在Tomcat6/ Linux上从servlet读取和写入UTF-8时遇到了一些问题。请求和响应都是utf-8,浏览器是utf-8,在连接器和主机上的server.xml中都设置了URIEncoding。简而言之,我所知道的一切都是在代码中,服务器配置是utf-8。

在读取请求时,我必须从字符串中获取字节数组,然后再次将该字节数组转换为字符串。当写请求时,我不得不写字节,而不是字符串本身,以获得适当的响应(否则我会得到一个异常,说明某些非ASCII字符不是有效的ISO 8859-1)。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-04-03 18:53:43

更改LANG环境变量是解决该问题的一种方法。

官方的方法是在一个小程序过滤器中设置字符编码:http://wiki.apache.org/tomcat/Tomcat/UTF-8

一些背景信息:http://www.crazysquirrel.com/computing/general/form-encoding.jspx

票数 5
EN

Stack Overflow用户

发布于 2009-04-03 15:10:06

解决方案是将LANG环境变量设置为(在我的示例中) en_US.UTF-8,或者可能是任何其他UTF-8语言环境。我仍然对这样一个事实感到困惑:我不能从代码中做任何事情来使我的servlet正常运行。如果没有办法做到这一点,那么在我看来,它就是一个bug。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/714339

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档