如何将符号和 < 和 > 分别打印为 space < 和 > 到文件

How to print the symbols &#032; and &lt; and &gt; to a file as space < and > respectively

当只有符号描述时,如何将 Java 中的符号打印到文件中?

我从 DB2 收到了一个包含符号的字符串。 两个样本:

1) &lt;0800&gt;
2) 51V&#032;3801Z

这样的字符串去了两个不同的地方。一种是 JSP 将其渲染为 HTML。那是完美的;我分别得到 <0800>51V 3801Z。另一个地方是用 java.io.FileWriter 创建的 CSV 文件,它不会转换为“<”、“>”和“ ”。相反,它完全按照来自 DB2 的方式打印:

&lt;0800&gt;
and 51V&#032;3801Z.

"new" nio 库有什么可以帮助我的吗?我试过 apache.commons.lang3.StringScapeUtils.escapeHTML4 没有成功。

我建议查看 Apache 的 StringEscapeUtils, namely the unescapeHtml4() method

示例:

String input = "&lt;0800&gt;";
String output = StringEscapeUtils.unescapeHtml4(input);

确保您使用的是 unescapeHtml4 方法,而不是常规的 escapeHtml4 方法!