Java 中的 XML 节点到字符串
我遇到了这个Java函数,用于将XML节点转换为Java字符串表示形式:
private String nodeToString(Node node) {
StringWriter sw = new StringWriter();
try {
Transformer t = TransformerFactory.newInstance().newTransformer();
t.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");
t.setOutputProperty(OutputKeys.INDENT, "yes");
t.transform(new DOMSource(node), new StreamResult(sw));
} catch (TransformerException te) {
System.out.println("nodeToString Transformer Exception");
}
return sw.toString();
}
它看起来很简单,因为它希望输出字符串没有任何XML声明,并且必须包含缩进。
但我想知道实际输出应该如何,假设我有一个XML节点:
<p><media type="audio" id="au008093" rights="wbowned">
<title>Bee buzz</title>
</media>Most other kinds of bees live alone instead of in a colony. These bees make
tunnels in wood or in the ground. The queen makes her own nest.</p>
我是否可以假设应用上述转换后生成的字符串是:
"media type="audio" id="au008093" rights="wbowned" title Bee buzz title /media"
我想自己测试它,但我不知道如何以这个函数实际想要的方式表示这个XML节点。
我有点困惑,并提前感谢慷慨的帮助。