Каков самый простой способ красиво распечатать (также отформатированный) org.w3c.dom.Document
в стандартный вывод?
103
Вызов printDocument(doc, System.out)
, где этот метод выглядит так:
public static void printDocument(Document doc, OutputStream out) throws IOException, TransformerException {
TransformerFactory tf = TransformerFactory.newInstance();
Transformer transformer = tf.newTransformer();
transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "no");
transformer.setOutputProperty(OutputKeys.METHOD, "xml");
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "4");
transformer.transform(new DOMSource(doc),
new StreamResult(new OutputStreamWriter(out, "UTF-8")));
}
( indent-amount
Необязательный и может не работать с вашей конкретной конфигурацией)
Как насчет:
источник
Попробуйте jcabi-xml с одним вкладышем:
Это необходимая вам зависимость:
источник
источник
Это вернет красиво оформленный вывод с использованием рекурсивного спуска / подъема.
источник
если вы используете dom4j, это будет dom4JDOM.asString ()
источник