Java:将DOM写入XML文件(格式问题)

时间:2020-03-06 15:00:58  来源:igfitidea点击:

我正在使用org.w3c XML API打开一个现有的XML文件。我要删除一些节点,而要添加其他节点。

问题在于添加的新节点是一个接一个地写入的,没有换行符,也没有缩进。尽管XML文件确实是有效的,但对于人类来说很难检查它。

无论如何,是否在每个节点之后添加缩进或者至少一个换行符?

解决方案

我假设我们使用的是Transformer来进行实际的写入(写入StreamResult)。在这种情况下,请在调用transform之前执行此操作:

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

下面的线程中有一些"漂亮的打印"的好例子

如何从Java漂亮地打印xml

链接到我为解决方案而付出的努力