【问题标题】:How to compare Excel files in Java with DBUnit如何将 Java 中的 Excel 文件与 DBUnit 进行比较
【发布时间】:2012-12-07 14:58:38
【问题描述】:

我需要比较两个 Excel 文件以找出任何类型的内容差异。 不考虑格式/颜色/字体差异。 我遵循在this post 找到的解决方案,但它基于 DBUnit XlsDataSet 类。 此类的工作假设 Excel 文件具有特定结构: 第一行应该代表表格标题。在我的环境中并非总是如此。 例如,表格标题可能从单元格 C4 开始。

但是,我想坚持使用 DBUnit,因为它提供了很好的支持。 有人知道如何在 XlsDataSet 类中配置表头的开始位置吗?

感谢和问候

【问题讨论】:

    标签: java excel compare dbunit


    【解决方案1】:

    当一个文件的表头从 C4 开始而另一个从 A1 开始时,它们已经不同了。

    为了比较从不同单元格开始的数据,我可以想到两种方法。

    1. 在比较之前,检查空行/列,将内容移动到第一行/列。
    2. 在您的文件中包含一个“关键字”作为起点。

    这两种方式都需要大量工作。也许更容易适应你的环境,所以所有文件都从 A1 开始。

    【讨论】:

    • 感谢您的回复。我的意思是这两个文件都从 C4 开始。我可以接受,如果它们从不同的细胞开始,它们是不同的。但 XlsDataSet 似乎无法这样做。能以某种方式完成吗?
    • 我不熟悉 XlsDataSet 但查看手册没有办法从另一个单元格开始。就像我说的,您需要使用此方法将 exel 文件转换为正确的格式之前。我的想法是检查包含数据的第一行和第一列。然后你必须覆盖旧表或创建一个新表,将数据传输到第一行。查看this 链接,它解释了如何读取和写入单元格。从这里开始,我让您思考 :) 如果您遇到具体问题,请随时提出。
    猜你喜欢
    • 2022-06-12
    • 1970-01-01
    • 2012-09-12
    • 2013-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多