CRC能够对数据段进行编码,比如字符串。如果对一个以k计的文件进行校验编码,用什么好呢?
主要是要进行文件传输的校验,但只查到了CRC一种方法,请问各位还有没有其他什么方法能对文件传输进行检错,能纠错就更好了。
谢谢。
问题点数:50、回复次数:7Top
1 楼HUNTON(追求完美)回复于 2003-09-01 12:33:09 得分 10
要纠错,那就要纠错编码了。BCH码、RS码、卷积码等都可以纠错。如果你有西安电子科技大学出版社的有王新梅、肖国镇编著的《纠错码--原理与方法》这本书,就可以学到很多的纠错码的知识了。现在讲纠错的书是少之又少,有的话也是只讲一点点,而且都是一些旧书,我都到省图书管去找了,也没有找到什么纠错的好的、新的纠错的书来。倒是在学校的图书管里有看到上面推荐的那本书。Top
2 楼happy__888([顾问团]寻开心 www.e-jjj.com)回复于 2003-09-01 12:40:06 得分 10
MD5 可用于校验,不能纠错误
要纠错,使用CRC就可以,不过校验数据会很长的。Top
3 楼HUNTON(追求完美)回复于 2003-09-01 12:40:31 得分 10
BCH码、RS码、卷积码等都可以纠错。BCH码和RS码就不要校验了,它们要么就纠不出来,能纠错的结果是一定正确的。而卷积码也要CRC校验才更能保证纠错的正确性。Top
4 楼happy__888([顾问团]寻开心 www.e-jjj.com)回复于 2003-09-01 12:40:55 得分 10
可以考虑用zlib等库,先压缩后传递,利用压缩库自己的校验。Top
5 楼wangshuang(Sean)回复于 2003-09-02 14:01:21 得分 0
谢谢各位。
我应该怎么办呢?是把一个文件读成二进制,然后把得到的数编码?文件太大就得分段了吧?Top
6 楼mme(dog)回复于 2003-09-02 14:17:18 得分 10
何必呢,如果是传输文件而已,就不用搞得那么复杂,一般来说,校验的时间是很长的.
其实根本不用校验,如果某个数据包真的传输错了,那就再传一次.这样省时而且快多了.Top
7 楼HUNTON(追求完美)回复于 2003-09-02 16:25:08 得分 0
不用校验,怎么知道某个数据包真的传输错了?Top




