逐行比较两个文本文件,发现差异

本文关键字:文件 发现 文本 两个 比较 逐行 | 更新日期: 2023-09-27 18:32:00

我正在尝试找到逐行比较两个文本文件的最快方法,将结果组合在一个带有差异标志的多维数组中,例如:

array(0) (line1) (in file a) (in file b)
array(1) (line2) (in file a) (not in file b)
array(2) (line3) (not in file a) (in file b)

我知道如何为此编写自己的代码,但它很慢,所以我想知道是否有某种更快的 .NET 方法?目前在VS2008 .NET 3.5中工作,但可能会将项目转移到VS2013/15,因此无论哪种框架都能完成工作。

逐行比较两个文本文件,发现差异

您需要的是

C# 中经典 diff 算法的实现。

这是关于CodeProject的一个:http://www.codeproject.com/Articles/6943/A-Generic-Reusable-Diff-Algorithm-in-C-II

以下是其他一些变体: http://www.mathertel.de/Diff/

最后,http://devdirective.com/post/115/creating-a-reusable-though-simple-diff-implementation-in-csharp-part-3

祝你好运!