如何在Java DOM解析器中格式化XML?

23 浏览
0 Comments

如何在Java DOM解析器中格式化XML?

这个问题已经在这里有了答案:

如何从Java中漂亮地打印XML?



这里的第一个标签已经被写入文件了,接下来是XML版本,我需要将其写在下一行。 像下面这样


 
  

我用下面的代码将XML写入文件,请帮忙

TransformerFactory transformerFactory = TransformerFactory
                .newInstance();
        Transformer transformer = transformerFactory.newTransformer();
        DOMSource source = new DOMSource(document);
        StreamResult result = new StreamResult(new File(
                Constants.xmlLocation
                        + Constants.metaDataXmlFileName
                        + format.format(calendar.getTime()) + ".xml"));
        transformer.setOutputProperty(OutputKeys.INDENT, "yes");
        transformer.setOutputProperty(
                "{http://xml.apache.org/xslt}indent-amount", "5");
        transformer.transform(source, result);

admin 更改状态以发布 2023年5月21日
0
0 Comments

您可以尝试以下代码,这将有效,并且您将获得格式化的输出

transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer.setOutputProperty(OutputKeys.DOCTYPE_PUBLIC,"yes");
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "10");

0