我有一个带有表单的 html 页面,以及以下代码:
$.ajax({
url: 'xxxxx',
data: $('#contact-form').serialize(),
type: 'post',
cache: false,
dataType: 'html',
success: function (data) {....},
error: contact.error
});
当我从 html 页面通过邮件发送字符串时,例如,字符串áéíúó
,在 Java 中,我收到了字符串áéÃúó
。我应该怎么做才能解决这个问题?任何帮助都会非常有用。
(日期 20131401)解决方案: @TechSpellBound,感谢您的回复。您的解决方案促使我搜索另一个:D,我找到了另外两个对我有用的解决方案:1)在 Java 中,使用以下代码:
String param = new String(req.getParameter("param").getBytes(), "iso-8859-1");
2) 其他解决方案是,在我的 Tomcat 中配置文件 web.xml 并放入:
<filter>
<filter-name>setCharacterEncodingFilter</filter-name>
<filter-class>org.apache.catalina.filters.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<async-supported>true</async-supported>
</filter>
<filter-mapping>
<filter-name>setCharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
然后文件 server.xml,把属性 URIEncoding="UTF-8" 放在所有配置的连接器中。再次感谢。