将元素(org.w3c.dom)转换为Java中的字符串

时间:2015-09-23 12:12:28

标签: java xml element

我有一个将Element对象转换为String的小问题。因为我需要将一个字符串传递给特定方法。我尝试过使用.toString()或使用分配给它的String变量。没有一项试验是正确的。我们如何轻松转换,字符串对象也应该显示为Element显示的确切XML结构。

Element element = (Element) xmlList.item(i);

以上"元素"对象以XML格式显示。我想在XML格式的String中转换相同的内容

2 个答案:

答案 0 :(得分:6)

 import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;

import java.io.StringWriter;

TransformerFactory transformerFactory = TransformerFactory
                    .newInstance();
            Transformer transformer = transformerFactory.newTransformer();
            DOMSource source = new DOMSource(<your-element-obj>);
            StreamResult result = new StreamResult(new StringWriter());



            transformer.transform(source, result);

            String strObject = result.getWriter().toString();

试试这个

答案 1 :(得分:3)

您需要使用变换器API。

TransformerFactory.newInstance().newTransformer().transform(new DOMSource(element), new StreamResult(System.out));