首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

比较两个文件的内容是否一致,该怎么处理

2012-04-12 
比较两个文件的内容是否一致问:怎么比较两个文件的内容是否一样。答:直接读出来比较不就行了。问:文件很大,

比较两个文件的内容是否一致
问:怎么比较两个文件的内容是否一样。
答:直接读出来比较不就行了。  
问:文件很大,非常大怎么办?
一次读取一个指定大小的块。

当时挺确定这个方法能很快解决问题的,回家动手试了一下发现不行。
问题:每次读取1024个字节到数组,但文件的内容不到1024的时候就会在后面出现随机的字符所以肯定不会相等。
解决:考虑通过将文件指针移到文件尾然后用计算出还剩下多少大小的内容,就可以判定在什么地方加'\0'了。
问题:其实这都不是解决的方法,假设文件大到不行啊,,怎么可能有什么数据类型可以保存那个标记值。

难道真的要一个字符一个字符读出来比较?这个方法似乎不太靠谱。
不是有一个比较文件的 DOS命令吗 不知道那个是什么原理。
各位有好的方法不妨指点指点

[解决办法]
md5或者sha1一下,就能知道文件内容是否一样了
[解决办法]
用文件的read方法读入数据,如果发现eof为真,再用gcount方法取到实际读入的计数。

这样的话,你一次想读入多少都没问题了。

热点排行