我正在使用 JDom 2.0.5 来修改 xml。我还有一个 Junit 测试用例,它检查它是否被正确修改。它有一个输入 xml、一个测试方法(转换 xml)和一个新的 xml(结果)。稍后它将输出与应该是最终结果的文件进行比较。
FileUtils.contentEquals(newXml, modelXml);
但这总是错误的,因为每个结束标记都是由 JDom 自动修改的。我无法更改模型,因为这是一项未修改的要求。
Input: <properties/>
Output: <properties /> --> should be as input:: <properties/>
如何避免 JDom 更改此标签?
SAXBuilder builder = new SAXBuilder();
Document doc = (Document) builder.build(xmlFile);
// Add, remove some elements ...
XMLOutputter xmlOutput = new XMLOutputter();
xmlOutput.setFormat(Format.getPrettyFormat());
xmlOutput.output(doc, new FileWriter(newXml, false));