我有一个将Element对象转换为String的小问题。因为我需要将一个字符串传递给特定方法。我尝试过使用.toString()或使用分配给它的String变量。没有一项试验是正确的。我们如何轻松转换,字符串对象也应该显示为Element显示的确切XML结构。
Element element = (Element) xmlList.item(i);
以上"元素"对象以XML格式显示。我想在XML格式的String中转换相同的内容
答案 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));