首先感谢这个伟大的实用程序“XMLUnit”。
我有一个要求,我想比较 2 个 XML 并找出差异。一旦发现差异,我需要生成一个 Excel 报告,该报告将显示整个 XML 数据(相似的数据以及不同的数据)。数据的异同将在此 Excel 中使用某种颜色突出显示。
例子-
第一个 XML-
<Project>
<Policy>
<Amount>20</Amount>
<Balance>10</Balance>
<PolicyDetails>
<Amount>30</Amount>
<SendDate>2017-04-03</SendDate>
</PolicyDetails>
<PolicyDetails>
<Amount>100</Amount>
<SendDate>2017-04-02</SendDate>
</PolicyDetails>
<PolicyDetails>
<Amount>50</Amount>
<SendDate>2016-04-02</SendDate>
</PolicyDetails>
</Policy>
</Project>
第二个 XML -
<Project>
<Policy>
<Amount>10</Amount>
<Balance>10</Balance>
<PolicyDetails>
<Amount>50</Amount>
<SendDate>2017-04-03</SendDate>
</PolicyDetails>
<PolicyDetails>
<Amount>100</Amount>
<SendDate>2017-05-05</SendDate>
</PolicyDetails>
</Policy>
</Project>
现在我需要找到这些 XML 的异同,并生成一个将数据显示为的 excel -
我知道我可以使用 JAVA 一个一个地读取 XML 并执行此操作,但实际的 XML 将具有不同的数据组合,其中排序可能不同,等等。
到目前为止我所做的——我使用了 XMLUnit 2“DiffBuilder”并发现了这些 XML 中的所有差异。我什至将我的自定义 DifferenceEvaluator 用于一些自定义逻辑。
我想弄清楚如何在excel中以所需的格式写出异同。任何人都可以在这里帮助我吗?
我还想过实现ComparisonListener并抓住每一个相似之处和差异,并从这里开始在excel中写入数据。