我试图找到一种逐行比较两个文本文件的最快方法,将结果组合在一个多维数组中,并带有差异标记,例如:
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,因此无论哪种框架能够做到最好,都可以。
答案 0 :(得分:2)
您需要的是在C#中实现经典diff
算法。
这是CodeProject上的一个:http://www.codeproject.com/Articles/6943/A-Generic-Reusable-Diff-Algorithm-in-C-II
以下是其他一些变体:http://www.mathertel.de/Diff/
祝你好运!