比较xml到java并将它呈现为diff工具

时间:2015-05-12 03:07:48

标签: java xml eclipse java-ee xml-parsing

我需要在java中编写一个逻辑

  1. 采用x1.lsml等两个版本的xmls。 V2.xml
  2. 输出2 xmls
  3. 之间的差异
  4. 就像任何差异工具一样在网页上显示它们,就像winmerge会显示一样。
    • 删除的线条 - 以独特的颜色突出显示
    • 添加了行 - 以独特的颜色突出显示
    • 更改了线条 - 以独特的颜色突出显示
  5. 实现这一目标的最佳方式是什么。

    谢谢!

2 个答案:

答案 0 :(得分:1)

您可以使用XMLUnit来满足您的大部分要求。

答案 1 :(得分:1)

如果这就是你的意思,从头开始编写XML解析器是个坏主意。起初听起来真的很容易,但很快就变成了一场噩梦,相信我。我强烈建议您利用现有工具。

http://www.roseindia.net/opensource/xmldiff.php列出了几个工具,包括3DM,diffmk,diffxml,VMToolsX-DiffXMLUnit。如果您必须编写自己的解析器,您可能希望至少查看这些项目中的代码以获取想法。但是,只需要给予他们信任并使用他们的工具,而不是自己重写它们需要花费更少的时间和精力。我没有使用过任何这些工具,所以买家要小心。

另见Tool or library for comparing xml files