我想在java.help中计算自定义校验和计算。如何进行以下示例操作?
示例:
data : 30313037303130453030
hex summation :
x = ' 30+31+30+37+30+31+30+45+30+30' = '1FE'
Not of hex value :
y = NOT(x) = 01
Answer : Checksum = 3031
答案 0 :(得分:0)
我发现了一个关于cksum计算的好评(它在java中) - here。这也是.jar
,可以提供帮助 - here。甚至还有一个类Checksum,可以在这里找到 - LINK。
要获得你正在谈论的“cksum”(因为它真的是你正在创建的假“cksum”,如果你依赖于代表它的相同字符串中的唯一性,它真的会给你带来一些问题不同的文件等)你可以使用这个:
int value = 0;
String incHex = "";
for (int i = 0; i == data.length(); i+=2){
valueInt += Integer.parseInt(hex, data.substring(i, i+2));
}
resultHex = Integer.toHexString(valueInt);
此resultHex
是示例中的“x”,valueInt
是该数字的十进制表示(数据字符串的所有部分的总和)。