有个小需求,需要比较两个文件内容的差异,并将差异生成新文件?该怎么实现?

刚开始一看,觉得挺简单,就是读取两个文内容,一行一行的比。 后来测试发现,对不同的差异场景,还有点复杂。用beyond compare工具,发现比较的结果很好,对于行数据不对称的,他也能比较出来,但自己写,怎么实现呢?再想想一行行的比,效率也很低。

拉莫斯之舞
浏览 57回答 2
2回答

至尊宝的传说

我有另外一个方法,不过,可能处理比较麻烦,但资源和效率应该很不错。该方法也可通过网络查找,此方法为BitMap。

30秒到达战场

1、将每行生成校验码,比如md5或者crc 都行2、是不是觉得很熟悉了,接下来要做的事情与下面的问题等同:   求出两个字符串的最大公共子串,如str1="asdfffds" str2="aabbscffd",最后求出子串为ffd。3、所以接下来可以用动态规划算法,也可以用你喜欢的任何算法,进行“求最大公共子串”的活动了。求出来后,在这个最大公共子串前后分成两份,继续求最大公共子串,接下来就是递归了。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java