DLT645校验位

 2023-09-05 阅读 87 评论 0

摘要:DLT645检验位是把检验位之前的所有16进制接起来去最后两位数 /*** DLT645校验码*/ public class DLT655 {public static String makeCheck(String data) {if (data == null || data.equals("")) {return "";}int total = 0;int len = data.l

 

DLT645检验位是把检验位之前的所有16进制接起来去最后两位数

/*** DLT645校验码*/
public class DLT655 {public static String makeCheck(String data) {if (data == null || data.equals("")) {return "";}int total = 0;int len = data.length();int num = 0;while (num < len) {String s = data.substring(num, num + 2);total += Integer.parseInt(s, 16);num = num + 2;}/*** 用256求余最大是255,即16进制的FF*/int mod = total % 256;String hex = Integer.toHexString(mod);len = hex.length();// 如果不够校验位的长度,补0,这里用的是两位校验if (len < 2) {hex = "0" + hex;}return hex.toUpperCase()+"16";}}

 

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://808629.com/709.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 86后生记录生活 Inc. 保留所有权利。

底部版权信息