用ruby语言遍历两个文件夹并比较它们,输出相同的文件和个数,但是读取大的文件时读取的很慢,

能有高手帮忙给来个建议或给点代码... 能有高手帮忙给来个建议或给点代码 展开
 我来答
ll20143628
2012-03-08 · TA获得超过945个赞
知道小有建树答主
回答量:1153
采纳率:0%
帮助的人:715万
展开全部
这是正常的吧,无论是用校验码还是逐字节比较,都需要遍历整个文件才能确定文件是完全一样的。比如你比较两个1GB的文件,至少得先将它们读完才行吧。从硬盘上读取2GB文件就不是件容易的事了。
你可以从其它角度解决这个问题,比如先读取文件大小,只有完全一样大小的文件再逐字节比较。在正常的情况下,单单用大小比较就能筛选掉99%的文件了。
更多追问追答
追问
给点代码吧,
追答
我不用ruby。不过ruby应该有获取文件大小的库函数吧。
我用类似c的代码来说明吧
if(a.size == b.size)
 逐字节对比
else
 返回不相等的结果
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式