0

所以我有一个打印各种文件内容的servlet。但是当我想打印 .xml 文件时,我的 servlet 页面不打印任何东西,因为页面使用这个 xml 标签作为 html 并且正在解析它们而不是打印。我想打印这个标签。我正在逐行读取文件,并且行存储在变量行中。

4

2 回答 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 文档中的内容

浏览器无法更好<地区分作者打算表示“标签开始”和作者打算表示“渲染此”的区别。

您需要将其表示为&lt;好像您希望它显示为数据一样。

JSP 中等价的 htmlentities的答案?解释了如何将文本字符串转换为 HTML 字符串。


如果您尝试输出 XML 文档而不是 HTML 文档

您需要指定 XML 内容类型(例如application/xml)而不是 HTML 内容类型。

有关说明,请参阅如何在 servlet 上设置内容类型

于 2012-08-20T11:08:00.647 回答