我正在比较两个excel文件和我当前的测试 - 我有两个文件完全相同,每个文件包含一列和5行。当我检查它们是否相等时,它会失败,并说其中一个文件已经添加了项目。
不确定我是否以错误的方式检查了某些内容:
bool areEqual = false;
if (fileB.excelRows.Count() == fileA.excelRows.Count())
{
int i = 0;
while ((i < fileB.excelRows.Count()) && (fileB.excelRows[i] == fileA.excelRows[i]))
{
i += 1;
}
if (i == fileB.excelRows.Count())
{
areEqual = true;
}
}
if (areEqual)
MessageBox.Show("The files are the same");
else
{
....
}
答案 0 :(得分:1)
在excelRows [i] .rowHash。
上使用SequenceEqual
方法
而不是:
while ((i < fileB.excelRows.Count()) && (fileB.excelRows[i] == fileA.excelRows[i]))
将其更改为:
while ((i < fileB.excelRows.Count()) &&
(fileB.excelRows[i].rowHash.SequenceEqual(fileA.excelRows[i].rowHash)))