2015-10-10 31 views
0

我想计算客户端/服务器程序的校验和。为此,我正在获取文件中的字符串,然后获取每个字符的相应整数值(ASCII值)来计算校验和。计算镜像文件的校验和,Java

这适用于包含字符串的文件格式,但是这将适用于图像文件吗?我可以从图像文件中获取不可读格式的字符串。那些不可读的字符是否有ASCII值?

回答

1

最终每个文件都包含二进制数据,比特分组为字节。

ASCII是将某些位模式映射到某些英文字符以及数字和一些符号的代码。它还会留下未定义的字节,其中最重要的位被设置(值> 127)。

计算文件校验和的正确方法是检查文件的每个字节作为算法的输入。这对ASCII文本文件,具有不同编码(例如,Unicode变体之一)的文本文件,图像文件或任何其他文件同样适用。

+0

传递固定长度的字节来计算校验和是容易和高效的,但是否上述计算校验和的方法是可能的? –

+0

你究竟想要做什么?应用自定义校验和算法?你自己实施一个知名的吗?你只是想找到一些方法来创建校验和?如果你只是想获得例如md5散列,看看http://stackoverflow.com/questions/304268/getting-a-files-md5-checksum-in-java –

+0

我想实现一个手动校验和不是内置的校验和算法。 –