我需要获取XML元素及其子元素,转义XML并将它们作为文本节点附加到另一个文档中。我知道这种方法很愚蠢,但API需要它。
我可以使用Java的许多XML库之一来实现这一目标吗? 我尝试使用JAXP,但我的代码没有转义撇号和双引号。
…
String content = elementToString(nodeToEscape);
Text text = document.createTextNode(content);
Node n = document.getElementsByTagName("targetNode").item(0);
n.appendChild(text);
}
String elementToString(Element element) {
Document document = element.getOwnerDocument();
DOMImplementationLS domImplLS = (DOMImplementationLS) document.getImplementation();
LSSerializer serializer = domImplLS.createLSSerializer();
return serializer.writeToString(element);
}
生成的文档片段:
<dataItem aggregate="none" name="Order number"…
答案 0 :(得分:0)
答案 1 :(得分:0)
您无需转义引号和撇号。根据:http://www.w3schools.com/xml/xml_syntax.asp只有字符“&lt;”和“&amp;”在XML中严格违法