【阿涛叙事教程之】解救破损文件(循环冗余检查)
恢复的文件拷贝不出来,真是郁闷又遇到新问题了,提示“ReadFile(数据错误(循环冗余检查)。23) : F:temp3绘画二.iso”
麻烦事可真对,丢个数据,我容易吗?,喜欢技术的,可以看看哦,没事一边拷贝,一边写着玩,提高了自己的打字速度,方便了大家,还写了日记。(有错别字是正常的,请不要挑剔我)
我这次在解决循环冗余问题上做点介绍,方便如果大家也遇到此类问题,也能有所帮助,
首先说什么是循环冗余检查:
循环冗余检查(Cyclical Redundancy Check)俗称CRC,这个东西是在每个数据块(帧)中加入一个FCS(Frame CheckSequence,帧检查序列)。FCS包含了帧的详细信息,FCS是专门用于发送与接收装置比较帧的正确标记。如果数据有误,则再次发送。 这种东西发明是为提供一种数据传输检错功能,从而保证数据的完整,它对每组数据进行多项式计算,并将得到的结果附在帧的后面(也就是上面我说的FCS),如果读取的过程中出现CRC校验不通过,系统重复向硬盘复制数据,陷入死循环,导致复制过程无法完成。而WINDOWS并不是那么傻,他会经过(稍等,我数一下,)20次读取不到正确的数据时,他会自动跳出这个循环,但是WINDOWS还是做了一件傻事,他会把已经拷贝过去的文件删除,当然,比尔盖茨可能想,既然文件损坏,这个东西对你也就没有用了,呵呵,恰巧我就是他想想中的例外着,(我就算拿不到完整的,一半的我也要)。
突然想到了一个软件,BADCOPY,这个软件很厉害,它可以复制坏道上的数据,当然,CRC检查错误的数据也不在话下,就是唯一的缺点是,它会把拷贝不出来的位置用FFFF填充,说白了,就算文件用BADCOPY拷贝出来,文件也是破损的,然后我从网上找了找关于如何修复CRC错误区的数据,结果很遗憾,没有,(其实和我想想的一样),但是我真的是不想重新在去下载这个文件,毕竟是个大文件,看到了一片教程,利用FLASHGET下载CRC错误的文件,虽然他的办法也是得到一个破损的文件,但是对我用处太大了,因为我想到了另外一个软件,(曾经一直被称为流氓软件的迅雷),呵呵,(流氓软件也有有用的时候)迅雷的工作原理是,如果用户利用迅雷从服务器上下载了一个文件,而且这个文件也被很多其他用户下载过,那么日后再有人下载这个文件,迅雷会搜索相关的资源,从多个服务器上寻找这个文件,并且也会从其他用户的电脑里面下载这个文件,(说白了就是P2P),这样,就可以这样来想这个问题,我从本机下载能拷贝下来的数据,然后利用迅雷下载CRC错误的块,那岂不是,不用下载正常的数据,这样不就是我想要的修复数据的结果吗?,好了,想想不如行动,利用IIS,把文件放到一个英文文件夹里面(中文的经常会出错),然后把文件名也改成英文,配置好目录权限,并且把HTTP头设置好相对应的文件后缀为application/octet-stream,然后找到文件的URL,然后打开迅雷,下载这个文件,呵呵,速度和本地硬盘拷贝一样快,呵呵,还找到一个备用资源,
最终文件以修复的方式拷贝完毕,呵呵,速度是我想不用说你也知道了,大小3.44G,用了6分10秒下载完毕,是不是很神奇,呵呵,好了,此文章书写到这里,希望对你有帮助
亲,你怎么看?