需要一点帮助,我有两个信息源,该信息通过不同的程序导出到两个不同的CSV文件中。它们应该包含相同的信息,但这是需要检查的信息。
因此,我想做的如下:
文件为200,000奇数行,因此需要尽可能有效。
但是,尝试使用Excel进行此操作太复杂了,我真的很难找到一种以编程方式找到方法。
假设文件实际上是完全相同的,包括文本限定符,行的顺序和每个文件中包含的行数,那么最简单的方法可能是简单地将两个文件一起迭代并比较每一行。
using (StreamReader f1 = new StreamReader(path1))
using (StreamReader f2 = new StreamReader(path2)) {
var differences = new List<string>();
int lineNumber = 0;
while (!f1.EndOfStream) {
if (f2.EndOfStream) {
differences.Add("Differing number of lines - f2 has less.");
break;
}
lineNumber++;
var line1 = f1.ReadLine();
var line2 = f2.ReadLine();
if (line1 != line2) {
differences.Add(string.Format("Line {0} differs. File 1: {1}, File 2: {2}", lineNumber, line1, line2);
}
}
if (!f2.EndOfStream) {
differences.Add("Differing number of lines - f1 has less.");
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10360 次 |
| 最近记录: |