Преобразовать элемент (org.w3c.dom) в строку в Java

У меня небольшая проблема преобразования объекта Element в String. Потому что мне нужно, чтобы строка передавалась определенному методу. Я пытался с помощью.toString() или с помощью назначения переменной String. Ни одно из испытаний не было правильным. Как мы можем легко конвертировать, и строковый объект также должен показывать точную структуру XML, как это показано для Element.

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

Вышеуказанный объект "элемент" отображается в формате XML. Я хочу конвертировать то же самое в строку в формате XML

2 ответа

Решение
 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();

Попробуй это

Вам нужно использовать API преобразователя.

TransformerFactory.newInstance().newTransformer().transform(new DOMSource(element), new StreamResult(System.out));
Другие вопросы по тегам