我不得不说abc.xml和123.xml文件几乎是相似的,我的意思是具有相同的内容,但是第二个文件,即123.xml,比前一个文件有更多的内容。我想使用Java语言读取这两个文件,并比较每个标记在abc.xml中的内容是否与123.xml中的内容相同,这类似于对象比较。请建议我如何使用java读取xml文件并开始比较。
谢谢。
发布于 2012-04-25 16:06:21
我会选择XMLUnit。它提供的功能:
之间的差异使用XSLT
<代码>H110通过DOM遍历暴露的一段XML中的单个节点<代码>H211<代码>F212
祝好运!
发布于 2012-04-25 16:05:36
如果你只是想比较一下,那就用这个:
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
dbf.setNamespaceAware(true);
dbf.setCoalescing(true);
dbf.setIgnoringElementContentWhitespace(true);
dbf.setIgnoringComments(true);
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc1 = db.parse(new File("file1.xml"));
doc1.normalizeDocument();
Document doc2 = db.parse(new File("file2.xml"));
doc2.normalizeDocument();
Assert.assertTrue(doc1.isEqualNode(doc2));发布于 2012-04-25 16:04:43
我将使用JAXB从XML文件生成Java对象,然后对Java文件进行比较。它们将使处理变得容易得多。
https://stackoverflow.com/questions/10311563
复制相似问题