16进制数据相加,计算校验和
2016-05-05 12:47
399 查看
取得是低位校验和
public String makeChecksum(String data) { if (StringUtils.isEmpty(data)) { return ""; } int iTotal = 0; int iLen = data.length(); int iNum = 0; while (iNum < iLen) { String s = data.substring(iNum, iNum + 2); System.out.println(s); iTotal += Integer.parseInt(s, 16); iNum = iNum + 2; } /** * 用256求余最大是255,即16进制的FF */ int iMod = iTotal % 256; String sHex = Integer.toHexString(iMod); iLen = sHex.length(); //如果不够校验位的长度,补0,这里用的是两位校验 if (iLen < 2) { sHex = "0" + sHex; } return sHex; }
相关文章推荐
- JavaScript实现把rgb颜色转换成16进制颜色的方法
- js实现字符串的16进制编码不加密
- 文本和16进制UltraEdit-32 v13.20+3 官方简体中文版+破解补丁 提供下载
- php中将图片gif,jpg或mysql longblob或blob字段值转换成16进制字符串
- java发送heartbeat心跳包(byte转16进制)
- javascript实现rgb颜色转换成16进制格式
- c#实现16进制和字符串之间转换的代码
- JavaScript中的16进制字符(改进)
- 16进制显示字节流技巧分享
- 16进制String和int互转
- c++ int to hex string
- 十六进制颜色转换
- 16进制颜色转化成UIColor
- C语言:将16进制字符串转化为int类型值
- 16进制和2进制互转
- 10进制转2,8,16进制
- C# 16进制与字符串、字节数组之间的转换(转)
- 关于串口发送16进制编码及解码问题
- 校验和算法
- java计算md5值-为什么要把结果转为16进制的字符串?