我有一个包含一堆正则表达式的源文本文件。我正在阅读文本文件,将正则表达式匹配分配给数组索引,并使用 DOM 创建 XML。
但是,我需要将一些样板信息添加到生成的 XML 文档中。我不想创建数百个新的、复杂的嵌套 DOM 元素,而只想使用 element.setTextContent(someBoilerPlateXML) 将 XML 样板信息放入 XML DOM 元素之一。
我正在尝试 org.apache.commons.lang3.StringEscapeUtils.unescapeHtml4 来做到这一点。它似乎适用于我的 System.out.println(someBoilerPlateXML) 测试,但不适用于 element.setTextContent(someBoilerPlateXML) 实现。
例如:
输入:
String test = org.apache.commons.lang3.StringEscapeUtils.unescapeHtml4("<Hello id=\"id\"/>");
System.out.println(test);
输出:
<Hello id="id"/>
输入: Element element= doc.createElement("element");
element.setTextContent(org.apache.commons.lang3.StringEscapeUtils.unescapeHtml4("<Hello id=\"id\">"));
在生成的 XML 文件中输出:
<Hello id="id"/>
为什么会这样做,我怎样才能做到这一点?我需要使用另一个免费包吗?