首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有没有办法将两个excel文件的内容(包括格式)与SpreadsheetLight进行比较?

有没有办法将两个excel文件的内容(包括格式)与SpreadsheetLight进行比较?
EN

Stack Overflow用户
提问于 2015-02-11 08:12:57
回答 1查看 205关注 0票数 1

我有两个excel文件,它们都是用SpreadsheetLight生成的。我需要做的是比较两者是否相同。

对于文本文件,这很容易,因为我只会在每个文件上生成一个MD5和,但由于这些是.xlsx文件,所以这并不像每次生成文件那样容易生成一个稍微不同的文件。从我已经看到的情况来看,有一个解决方案可以比较两个excel文件的内容本身:Comparing two excel files for differences

那么,与问题中的基本问题和答案不同的是:

  1. 我使用SpreadsheetLight生成两个文件
  2. 我不仅要比较文件中的数据,还要比较所有的格式,.

所以我的问题是:有没有其他方法来比较两个excel文件(特别是与SpreadsheetLight有关的文件)?

EN

回答 1

Stack Overflow用户

发布于 2015-02-19 00:41:24

我不认为简单的嵌套for循环可以做到这一点:

代码语言:javascript
复制
bool AreSheetsIdentical(SLDocument doc1, SLDocument doc2)
{
    SLWorksheetStatistics stats1 = doc1.GetWorksheetStatistics();
    SLWorksheetStatistics stats2 = doc2.GetWorksheetStatistics();

    for (int i = 1; i < stats1.EndColumnIndex; i++)
    {
        for (int j = 1; j < stats1.EndRowIndex; j++)
        {
             if (doc1.GetCellValueAsString(i, j) != doc2.GetCellValueAsString(i, j))
                 return false;
             if (doc1.GetCellStyle(i, j) != doc2.GetCellStyle(i, j))
                 return false;
         }
     }
     return true;
}

您还可以使用GetWorksheetStatistics进行一些预检查,因为如果它们没有相同数量的行和列,那么它们显然是不相同的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28449454

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档