【发布时间】:2010-10-05 05:43:11
【问题描述】:
我有一个需要转换为字符串的 xml 文档对象。
有这么简单的方法吗?
【问题讨论】:
-
你使用的是什么 API,输入的是那个对象?
我有一个需要转换为字符串的 xml 文档对象。
有这么简单的方法吗?
【问题讨论】:
我将其放在评论中,但后来认为如果我将其添加为答案,以供将来参考,人们可能会发现它更容易。所以... Joshua.ewer 的回答是正确的,但需要 xalan-2.7.0.jar。
【讨论】:
这是我从附近的图书馆中提取的一些快速代码。可能想打扮一下,但它有效:
import java.io.*;
import javax.xml.transform.*;
import javax.xml.transform.dom.*;
import javax.xml.transform.stream.*;
public String TransformDocumentToString(Document doc)
{
DOMSource dom = new DOMSource(doc);
StringWriter writer = new StringWriter();
StreamResult result = new StreamResult(writer);
TransformerFactory factory = TransformerFactory.newInstance();
Transformer transformer = factory.newTransformer();
transformer.transform(dom, result);
return writer.toString();
}
编辑:正如评论者之前注意到的,我有一个语法错误。不得不拔出一些敏感的线,这样我就不会被罐头并以错误的顺序放回它们。谢谢! ;-)
【讨论】:
你可以使用 Dom4J:
OutputFormat format = OutputFormat.createPrettyPrint();
XMLWriter writer = new XMLWriter( System.out, format );
writer.write( document );
【讨论】: