所以我有一个打印各种文件内容的servlet。但是当我想打印 .xml 文件时,我的 servlet 页面不打印任何东西,因为页面使用这个 xml 标签作为 html 并且正在解析它们而不是打印。我想打印这个标签。我正在逐行读取文件,并且行存储在变量行中。
问问题
2329 次
2 回答
2
如果要在 HTMl 页面中打印 xml 内容,可以使用Apache commons lang 库中的StringEscapeUtils.escapeHtml()函数将 xml 文件内容写入 HTML 页面
PrintWriter writer = response.getWriter();
writer.write("<html><head></head><body>");
writer.write(StringEscapeUtils.escapeHtml(xmlContent);
writer.write("</body></html>");
于 2012-08-20T11:27:50.613 回答
2
如果您尝试将XML 显示为 HTML 文档中的内容:
浏览器无法更好<
地区分作者打算表示“标签开始”和作者打算表示“渲染此”的区别。
您需要将其表示为<
好像您希望它显示为数据一样。
JSP 中等价的 htmlentities的答案?解释了如何将文本字符串转换为 HTML 字符串。
如果您尝试输出 XML 文档而不是 HTML 文档:
您需要指定 XML 内容类型(例如application/xml
)而不是 HTML 内容类型。
有关说明,请参阅如何在 servlet 上设置内容类型。
于 2012-08-20T11:08:00.647 回答