我如何才能区分两个文本文件?

时间:2013-10-01 18:09:23

标签: php

我有两个文本文件。我想比较这两个文本文件,并希望创建具有这2个文件差异的新文本文件

Old_file.txt内容: -

XYZ,Desc,46,XYZ,1.6000,0
XYZ1,Desc,56,XYZ1,8.6000,0
XYZ2,Desc,66,XYZ2,10.6000,0
XYZ3,Desc,76,XYZ3,11.6000,0

new_file.txt内容: -

XYZ,Desc,46,XYZ,1.6000,0
XYZ1,Desc,86,XYZ1,9.6000,0
XYZ2,Desc,66,XYZ2,10.6000,0
XYZ3,Desc,100,XYZ3,11.6000,0

需要文件: - (new_file.txt - old_file.txt)

XYZ1,Desc,86,XYZ1,9.6000,0
XYZ3,Desc,100,XYZ3,11.6000,0

提前谢谢你。

2 个答案:

答案 0 :(得分:2)

您正在处理通常称为“longest common subsequence problem”的内容,有一些最常见算法的实现。您可以使用here提供的脚本找到问题的解决方案。

答案 1 :(得分:1)

您可以使用非常健壮的Text_Diff pear包。还有xdiff扩展程序,您可以使用xdiff_file_diff函数执行此操作

xdiff_file_diff('Old_file.txt', 'new_file.txt', 'diff.txt');

其中diff.txt将是生成的文件,并在两个文件之间进行比较。