以正确的格式从查询字符串中获取 unicode 值

发布于 2024-12-11 21:04:37 字数 83 浏览 0 评论 0原文

我是JSP编程的初学者,我想知道哪些 代码(程序) 我必须编写以从 queryString 获取 Unicode 值

非常感谢您的帮助!

I am a beginner in JSP programming and I would like to know which
code ( program ) I must write to get the Unicode value from queryString

Thank you very much for your help !

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

桃气十足 2024-12-18 21:04:37

为了获取 unicode 值,此代码可能会对您有所帮助。

if(request.getCharacterEncoding() == null)
request.setCharacterEncoding("UTF-8");

欲了解更多信息,请参阅:
点击此处

For getting unicode value this code may help you.

if(request.getCharacterEncoding() == null)
request.setCharacterEncoding("UTF-8");

for more information see this :
Click Here

有深☉意 2024-12-18 21:04:37

HttpServletRequest#getQueryString () 返回 URL 编码的查询字符串。您应该更喜欢使用 getParameter(), getParameterValues()< /code>getParameterMap() 方法分别检索单个参数、多个参数或整个参数映射。使用这些方法,容器将自动为您对参数名称和值进行 URL 解码。在 JSP 内部,这些值可以通过 ${param.name}${paramValues.name}${pageContext.request.parameterMap} 获得。 > 分别。

如果您出于某种不明显的原因确实坚持自己解析和摆弄原始查询字符串,那么您必须将它们拆分为 &=分别获取各个参数和 name=value 部分,最后自己对每个部分进行 URL 解码。可以使用 String#split() 和 URL 解码可以使用 URLDecoder#decode()

下面是一个启动示例:

String charset = request.getCharacterEncoding();
if (charset == null) charset = "UTF-8";
String queryString = request.getQueryString();

for (String parameter : queryString.split("&")) {
    String[] parts = parameter.split("=");
    String name = URLDecoder.decode(parts[0], charset);
    String value = URLDecoder.decode(parts[1], charset);
    // ...
}

默认字符集至少应与您用于返回 HTTP 响应的相同。例如,当它是 JSP 时,它应该与您在 pageEncoding 中指定的相同:

<%@page pageEncoding="UTF-8" %>

The HttpServletRequest#getQueryString() returns an URL-encoded query string. You should rather prefer to use getParameter(), getParameterValues() or getParameterMap() methods to retrieve respectively a single parameter, multiple parameters or the entire parameter map. Using those methods, the container will automatically URL-decode the parameter names and values for you. Inside a JSP those values are available by ${param.name}, ${paramValues.name} and ${pageContext.request.parameterMap} respectively.

If you really insist in parsing and fiddling the raw query string yourself for some unobvious reason, then you have to split them on & and = to get the individual parameters and the name=value parts respectively and finally URL-decode each part yourself. Splitting can be done using String#split() and URL-decoding can be done using URLDecoder#decode().

Here's a kickoff example:

String charset = request.getCharacterEncoding();
if (charset == null) charset = "UTF-8";
String queryString = request.getQueryString();

for (String parameter : queryString.split("&")) {
    String[] parts = parameter.split("=");
    String name = URLDecoder.decode(parts[0], charset);
    String value = URLDecoder.decode(parts[1], charset);
    // ...
}

The default charset should at least be the same as you've used to return the HTTP response. For example, when it's a JSP, it should be the same as you've specified in the pageEncoding:

<%@page pageEncoding="UTF-8" %>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文