基本文件版本diff算法

我正在寻找一种解决方案来比较同一文件的两个版本,以获得变化/差异的表示。

如果它是纯文本,那么谷歌的差异匹配补丁库应该做你想要的(它有一个C#版本)。

如果它是二进制数据,那么请查看人们对可执行文件( bsdiff和Courgette )应用更新所做的事情。 他们寻找两个文件之间的最小差异,以便可以向最终用户发送较小的更新。 听起来与您的需求相似。

对于纯文本文件,您可以在c#中找到一个开源实现: https : //github.com/mmanela/diffplex