获取ASCII字符集为Servlet中的ASCII字符
使用jsp,我们在隐藏字段中打印此Hh’k
值,然后提交它。然后在 servlet 中,我们将其作为参数 Hh'k
获取,而不是我们希望将其作为 Hh’k
。
有什么建议吗?
Using jsp we print this Hh’k
value in hidden field and then submit it. Then in servlet, we are getting it as parameter Hh'k
, instead we want this as Hh’k
.
Any suggestions?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
浏览器不会这样做,因为没有理由。它只是对符合
application/www-x-form-urlencoded
约定的特殊字符进行 URL 编码,并通过调用getParameter()
自动进行 URL 解码。如果您确实需要对它们进行 XML 转义,则需要在获取请求参数后自行完成。 Apache Commons Lang
StringEscapeUtils#escapeXml()
对此很有帮助:但是,为什么要这样做呢?在 HTML 中重新显示它们时遇到问题吗?为此,有一个更简单的解决方案, 只需使用 UTF -8 到处。例如,在 JSP 顶部添加以下内容:
等等。
The browser don't do that because there's no reason. It just URL-encodes the special characters conform the
application/www-x-form-urlencoded
contract which is automatically URL-decoded by callinggetParameter()
.If you really need to XML-escape them, you'd need to do it yourself after obtaining the request parameter. The Apache Commons Lang
StringEscapeUtils#escapeXml()
is helpful in this:However, why would you do that? Do you have problems with redisplaying them in the HTML? For that there's a much easier solution, just use UTF-8 everywhere. E.g. add the following in top of your JSP:
Etcetera.