问题描述
|
32位和64位JVM上的Java CRC32实现之间有什么区别吗?
我的问题是,我的客户端应用程序(在32位平台上)计算哈希并将其与64位服务器应用程序计算的哈希进行比较。
有时(并非总是)我得到不同的结果。
有谁知道是什么问题?
提前致谢!
解决方法
您是说CRC32类吗?
不,CRC-32是固定算法,JVM版本和CPU类型均不应对其产生任何影响。实际上,CRC-32例如在与架构无关的以太网中使用。
如果您知道表现出不匹配CRC-32的数据,请对照某个任意的CRC计算器进行检查,例如这个。显然,服务器端或客户端都在做错误的计算。
我的猜测是,在某些方面并没有处理整个流/文件(大概在文件末尾有几个字节)。