怎么快速准确的比较两个大文件(1G以上的文件)(100分)

  • 主题发起人 主题发起人 haoslm
  • 开始时间 开始时间
H

haoslm

Unregistered / Unconfirmed
GUEST, unregistred user!
用MD5和CRC比较都太慢了,有没有别的好点的办法,光比较大小又不是太准!
 
买好的配置高的机器
 
我还没学到这里,不过我想应该可以直接获得文件的大小吧
 
直接读取对比你测试过吗,如果采用数据块比较应该很快。
 
1个G以上的文件,差异应该是很大的,不如直接比大小.
 
我想,这样做应该也可以,并且比直接比较应该更好,我的代码见:
http://www.delphibbs.com/delphibbs/DispQ.asp?LID=3924582
 
http://www.mygrep.com/dup/index.htm
重复文件查找王
其本质就是快速比较N个文件中,哪些文件是一样的!经过测试,对于很大的不同的文件,都可以较快找出来。
 
如果你只需要知道两个文件是相同还是不同而不需要标记不同的地方,那么主要问题就是找到第一个不同的地方,因此大文件比较的主要瓶颈不是比较的算法。而是读取磁盘文件的时间。你可以考虑多个线程一个线程比较一个线程读取文件内容 这样能节省一点时间
 
我的回答与小雨哥的一样..
我的选择是前中后3K比较...中间再加多少点你都可以...写一个通用的类吧...像小雨哥一样.....不过你文件指向底部的时候,时间也是比较长的...当然肯定都要加文件大小的比较....
 
接受答案了.
 

Similar threads

回复
0
查看
1K
不得闲
回复
0
查看
813
不得闲
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部