以下是遵循的流程。
我通过表单提交传递接收者名称和html路径。我将该参数附加到网址,该参数将动态添加到html内容中。
我能够看到传递的特殊字符在我的servlet中正确显示。
但在我阅读html内容并再次显示内容后,特殊字符就会被删除。但显示时,静态内容中包含的相同字符会正确显示。以下是使用的代码段。
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);
}
答案 0 :(得分:0)
我不确定“特殊字符是否被转义”是什么意思,但这暗示了Charset
构造函数中的InputStreamReader
值不正确。
这些先前的答案提供了有关此内容的更多信息: