我有一个遗留代码,其代码很多org.w3c.dom.Element
代
Document doc = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
Element exampleElement = doc.createElement("example");
exampleElement.appendChild(...
如何将exampleElement
转换为XML字符串? (允许任何其他库)
<example>
...
</example>
不是那样
<?xml version="1.0" encoding="UTF-8"?>
<example>
...
</example>
答案 0 :(得分:0)
有一些选择:
使用XSL Transformer使用指令 omit-xml-declaration
应用更改Transformer transformer = TransformerFactory.newInstance()。newTransformer(); transformer.setOutputProperty(&#34; omit-xml-declaration&#34;,&#34; yes&#34;); transformer.transform(新的DOMSource(文档),新的StreamResult(流));
使用字符串替换流程将第一行替换为正则表达式或使用 indexOf(&#34;?&gt;&#34;)
取决于所使用的JDK中w3c Document的实现,可以使用文档的DOMConfiguration中的一些选项,如canonical-form
document.getDomConfig()的setParameter(&#34;典型形式&#34;,TRUE);
答案 1 :(得分:0)
Transformer transformer = TransformerFactory.newInstance().newTransformer();
transformer.setOutputProperty(OMIT_XML_DECLARATION, "yes");
Writer writer = new StringWriter();
transformer.transform(new DOMSource(node), new StreamResult(writer));
return writer.toString();