tomcat中的特殊字符[重复]

Posted

技术标签:

【中文标题】tomcat中的特殊字符[重复]【英文标题】:special characters in tomcat [duplicate] 【发布时间】:2011-09-30 11:10:43 【问题描述】:

可能重复:How to get UTF-8 working in java webapps?

我有一个 servlet,它在请求参数中接收一些特殊字符。我试图显示它们,但我只得到问号。

我的查询字符串 = http://localhost:8080/specialcharacter/quote/startmilesquote?option=côté

我正在显示

request.getQueryString()
result= option=c%C3%B4t%C3%A9

request.getParameter("option")
result=c�t�

我放了

request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");

在小服务程序中 将<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"> 放在响应的标题中。 我在 server.xml 中的连接器被定义为 UTF-8。

   <Connector connectionTimeout="20000" port="8080" 
              protocol="HTTP/1.1" redirectPort="8443"  URIEncoding="UTF-8"/>

我该如何解决我的问题?

【问题讨论】:

【参考方案1】:

确保问题不在于显示,而不是阅读:

如果在控制台打印,检查控制台是否有UTF-8编码 如果存储在数据库中,请确保数据库连接设置为 UTF-8

(另外,请确保在开始使用请求之前输入request.setCharacterEncoding(..)

【讨论】:

以上是关于tomcat中的特殊字符[重复]的主要内容,如果未能解决你的问题,请参考以下文章

删除java中的所有特殊字符[重复]

C#中的特殊字符打印[重复]

替换python字符串中的特殊字母[重复]

AIX 脚本中的 sed 不适用于特殊字符 [重复]

php正则表达式转义特殊字符[重复]

使用javascript在包含特殊字符的URL中传递参数[重复]