我正在尝试为diff
文件夹中的多个文件递归开发一种文件格式。考虑一个包含修补文件的源目录和一个包含原始文件的目标目录。编写一个大小最小的diff
文件,表示源目录和目标目录中所有文件之间的差异,可应用于原始文件,以便将原始文件转换为修补文件。
为此,我找到了dtl
图书馆。我应该使用库的哪个算法或功能将文件写入diff
磁盘,然后我可以稍后读取并应用以修补文件?有任何示例代码吗?我尝试将shortest edit script
( SES
) 的结果写入磁盘,但我意识到我需要为每个字节指定字符和操作。这当然会使输出文件大于整个比较文件,使这种差异格式完全多余,因为存储整个目标文件会节省更多存储空间。
git
作为另一个参考,这与版本控制系统的喜欢或操作方式非常相似,svn
但我不想使用它们,因为我主要处理二进制文件以及创建和应用补丁的简单要求。