有没有一种简单的方法将我的XML对象转换回java中的String?

时间:2009-02-03 18:55:00

标签: java xml

我有一个xml文档对象,我需要将其转换为字符串。

有这么简单的方法吗?

3 个答案:

答案 0 :(得分:5)

这是我从附近的图书馆中抽出的一些快速代码。可能想要打扮,但它的确有效:

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();
} 

编辑:正如评论员之前注意到的,我有一个语法错误。不得不拉出一些敏感的线条,所以我不会得到罐头并把它们放回错误的顺序。谢谢! ; - )

答案 1 :(得分:1)

你可以使用Dom4J:

OutputFormat format = OutputFormat.createPrettyPrint();
XMLWriter writer = new XMLWriter( System.out, format );
writer.write( document );

答案 2 :(得分:0)

我把它放在评论中,但后来认为如果我真的把它作为答案添加,将来人们可能会觉得更容易。所以... Joshua.ewer的答案是正确的,但需要xalan-2.7.0.jar。