XML 文档到字符串

2022-08-31 09:20:33

获取 XML 文档的字符串表示形式的最简单方法是什么 ()?也就是说,所有节点都将位于一行上。org.w3c.dom.Document

例如,从

<root>
  <a>trge</a>
  <b>156</b>
</root>

(这只是一个树表示形式,在我的代码中它是一个对象,所以我不能把它当作一个字符串)org.w3c.dom.Document

"<root> <a>trge</a> <b>156</b> </root>"

谢谢!


答案 1

假设是您的实例:docorg.w3c.dom.Document

TransformerFactory tf = TransformerFactory.newInstance();
Transformer transformer = tf.newTransformer();
transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");
StringWriter writer = new StringWriter();
transformer.transform(new DOMSource(doc), new StreamResult(writer));
String output = writer.getBuffer().toString().replaceAll("\n|\r", "");

答案 2

使用 Apache XMLSerializer

这里有一个例子:http://www.informit.com/articles/article.asp?p=31349&seqNum=3&rl=1

您也可以检查这一点

http://www.netomatix.com/XmlFileToString.aspx