java中的XML格式 - 维护状态缩进

spa*_*d89 5 java xml xml-formatting

我有一个XML文件,我打开并编辑节点中的一些属性,然后将其保存回来,但由于某种原因,保存的XML没有像以前那样正确缩进.

这是我保存XML文件的代码:

    TransformerFactory transformerFactory = TransformerFactory.newInstance();       
    Transformer transformer = transformerFactory.newTransformer();
    transformer.setOutputProperty(OutputKeys.INDENT, "yes");
    DOMSource source = new DOMSource(doc);
    StreamResult result = new StreamResult(new File(Path));
    transformer.transform(source, result); 
Run Code Online (Sandbox Code Playgroud)

虽然我已经指定了

transformer.setOutputProperty(OutputKeys.INDENT, "yes"); 
Run Code Online (Sandbox Code Playgroud)

XML没有正确缩进,我希望XML处于以前的状态(除了所做的更改)

任何帮助将非常感激.

非常感谢提前.

Ara*_*idi 1

您需要启用“缩进”并设置转换器的缩进量:

transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2");
Run Code Online (Sandbox Code Playgroud)

看看这是否有效。