我要xml文件说abc.xml& 123.xml几乎相似,我的意思是内容相同,但第二个,即123.xml的内容比前一个更多。我想使用Java读取这两个文件,并将额外的内容添加到abc.xml而不更改其现有内容
答案 0 :(得分:1)
Java内部有xml解析器。在网上搜索如何使用它。 下面给出了两个链接,
http://www.tutorialspoint.com/java_xml/java_dom_parse_document.htm
http://www.tutorialspoint.com/java_xml/java_dom_modify_document.htm
只需要阅读它们,然后编写逻辑进行比较,然后将其合并到另一个文件中。
答案 1 :(得分:0)
XMLUnit是我朋友的关键。它以先进而简单的方式比较两个XML并且易于理解。要添加新标记,您可以使用良好的字符串连接或使用jDom或任何类似的库来执行此操作。以下是一些很好的参考资料:
http://www.jdom.org/docs/apidocs/
http://xmlunit.sourceforge.net/userguide/html/
String refXmlPaht = "../test1.xml";
String testXmlPaht = "../test2.xml";
Document doc1 = TransformXML.convertXmlToDom(refXmlPaht);
Document doc2 = TransformXML.convertXmlToDom(testXmlPaht);
Diff myDiff = new Diff(doc1, doc2);
XMLUnit.setIgnoreWhitespace(true);
XMLUnit.setIgnoreComments(true);
XMLUnit.setIgnoreAttributeOrder(true);
assertXMLEqual("pieces of XML are not similar ", myDiff, true);
assertTrue("but are they identical? " + myDiff, myDiff.identical());
这部分是在不同情况下从其他链接中获取的。 如果你有更多问题,请打我!