【问题标题】:Special characters escaping while reading html content via URL通过 URL 读取 html 内容时特殊字符转义
【发布时间】:2015-11-03 06:14:41
【问题描述】:

以下是遵循的过程。

我通过表单提交传递接收者名称和 html 路径。我将该参数附加到 url,该参数将动态添加到 html 内容中。

我可以看到传递的特殊字符在我的 servlet 中正确显示。

但在我阅读 html 内容并再次显示内容后,特殊字符被 ecsaped。但是静态内容中包含的相同字符在显示时会正确显示。下面是使用的sn-p。

url = new URL(emailPagePath);

URI uri = new URI(url.getProtocol(), url.getUserInfo(), url.getHost(), url.getPort(), url.getPath(),url.getQuery(), url.getRef());          

url = uri.toURL();

URLConnection conn = url.openConnection(); 

Reader reader = new InputStreamReader(conn.getInputStream(),ApplicationConstants.ISO_CHAR_SET);

BufferedReader br = new BufferedReader(reader);

String inputLine;

StringBuilder content = new StringBuilder();

while ((inputLine =br.readLine()) != null) {

content.append(inputLine);

}

【问题讨论】:

  • 对此的任何建议都非常有帮助。谢谢。
  • 为什么所有的 URL/URI 操作?为什么不直接使用URI 并在最后一刻使用.toURL()?

标签: java aem


【解决方案1】:

我不确定您所说的“特殊字符已转义”是什么意思,但这暗示了 InputStreamReader 构造函数中的 Charset 值不正确。

这些先前的答案提供了有关此的更多信息:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-02
    • 1970-01-01
    • 2017-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-26
    • 2021-08-18
    相关资源
    最近更新 更多