ApachePOI:比较工作表的简单方法?
我需要用ApachePOI比较两个工作表。有没有一种简单的方法可以做到这一点,例如工作表比较函数,或者我必须比较每个单元格?尝试迭代所有单元格,并计算一个正在运行的哈希或类似的内容。运行两次,每个工作表运行一次,如果哈希相同,则工作表相同。好了,没有现成的方法可以做到这一点ApachePOI:比较工作表的简单方法?,apache,compare,apache-poi,Apache,Compare,Apache Poi,我需要用ApachePOI比较两个工作表。有没有一种简单的方法可以做到这一点,例如工作表比较函数,或者我必须比较每个单元格?尝试迭代所有单元格,并计算一个正在运行的哈希或类似的内容。运行两次,每个工作表运行一次,如果哈希相同,则工作表相同。好了,没有现成的方法可以做到这一点 我认为这是一种比在单元格与单元格之间进行比较更好的方法,因为一次只打开一个工作表,而不是一个单元格一个单元格的方法打开两个工作表。尝试迭代所有单元格,并计算运行的哈希或类似的内容。运行两次,每个工作表运行一次,如果哈希相同,
我认为这是一种比在单元格与单元格之间进行比较更好的方法,因为一次只打开一个工作表,而不是一个单元格一个单元格的方法打开两个工作表。尝试迭代所有单元格,并计算运行的哈希或类似的内容。运行两次,每个工作表运行一次,如果哈希相同,则工作表相同。好了,没有现成的方法可以做到这一点
我认为这是一种比在单元格对单元格的基础上进行比较更好的方法,因为一次只打开一个工作表,而不是在单元格对单元格的方法中打开两个工作表。因为这是Google上关于比较POI工作簿的第一个问题之一,我想分享一个适用于单元测试的解决方案。我找到了一个很好的Hamcrest matcher来解决这个问题: 基本上,通过Github自述文件中详细介绍的Maven导入库。一旦有了两本POI工作簿,就可以编写一个类似于以下内容的断言:
MatcherAssert.assertThat("Workbooks to be identical", actualWorkbook,
WorkbookMatcher.sameWorkbook(expectedWorkbook));
注意:我在这里使用MatcherAssert来获取关于比较的更详细的注释,但是JUnitAssert也是可用的。这在作者的网站上有所记载
它可以在作者的网站上找到。由于这是Google上关于比较POI工作簿的第一个问题之一,我想分享一个适用于单元测试的解决方案。我找到了一个很好的Hamcrest matcher来解决这个问题: 基本上,通过Github自述文件中详细介绍的Maven导入库。一旦有了两本POI工作簿,就可以编写一个类似于以下内容的断言:
MatcherAssert.assertThat("Workbooks to be identical", actualWorkbook,
WorkbookMatcher.sameWorkbook(expectedWorkbook));
注意:我在这里使用MatcherAssert来获取关于比较的更详细的注释,但是JUnitAssert也是可用的。这在作者的网站上有所记载
它可以通过作者的网站获得。您如何定义比较?你们有什么相同/不同的商业规则?风格?细胞?目录颜色?etcif单元格中的值不同,那么单元格也不同,工作表也不同。您如何定义比较?你们有什么相同/不同的商业规则?风格?细胞?目录颜色?etcif单元格中的值不同,则单元格不同,工作表也不同