/**
* CRC16校验码获取
* @author Xjt
*/
public class CRCUtils {

public static String getCRC(String str){

String[] str1 = str.split(" ");

int n = 0;
for(int i=0;i<str1.length;i++){

n ^= Integer.parseInt(str1[i],16);

}

String n16 = "";
while(n != 0) {
int i = n % 16;
n16 = to16(i) + n16;
n = n / 16;
}

return n16;

}
/**
* HEX转换
* @param i
* @return
*/
private static char to16(int i) {
if(i <= 9 && i >= 0)
return (char)(i + '0');
else
return (char)(i - 10 + 'A');
}
}

转载于:https://www.cnblogs.com/xujuntao/p/11028004.html

自己编写的Java获取CRC16校验码相关推荐

  1. java计算CRC16校验码

    java计算校验码的一个公式,亲测可行有效 /*** 计算CRC16校验码** @param data 需要校验的字符串* @return 校验码*/public static String getC ...

  2. PLC中用scl语言编写算法求解modbus crc校验码

    PLC中用scl语言编写算法求解modbus crc校验码 因为不是严格的modbus协议,是用的自由口通讯,传输数据里面得加上CRC校验,所以得搞个算法根据发送不同的数据生成相应的CRC校验码. 现 ...

  3. php crc16校验算法,PHP串口通信中计算crc16校验码

    最近使用PHP开发串口通信业务,在发送485Modbus命令时,基本都要计算CRC16校验码.网上搜索了很多文章,很多都计算的不对.本文记录搜索到的正确的计算方法. 代码如下:/** * crc16计 ...

  4. PHP CRC16 校验码的算法怎么使用

    PHP CRC16 校验码的算法如何使用 最近用到CRC16, 我现在就是要把 010301180001 算出CRC16的校验码,通过其他工具,可以得到 校验码是 05F1 最后完整的代码就是 010 ...

  5. 十六进制数据的CRC16校验码自写软件

    关于十六进制数据的CRC16校验码自写软件安装包 十六进制数据的CRC16校验码(0XA001)自写软件 链接与图片 全部代码 十六进制数据的CRC16校验码(0XA001)自写软件 这里分享一个自己 ...

  6. python crc-16 crc-16校验码 crc-16校验算法 ppp(MAC)帧检验序列FCS

    python crc-16 crc-16校验码 crc-16校验算法 ppp(MAC)帧检验序列FCS 想弄明白这里要看多几遍,配合下面的例子能更快理解. 第一.CRC-16校验码计算方法: 常用查表 ...

  7. JAVA实现CRC16校验

    一.校验码 CRC16占用两个字节,包含了一个 16 位的二进制值.CRC 值由传输设备计算出来,然后附加到数据帧上,接收设备在接收数据时重新计算 CRC 值,然后与接收到的 CRC 域中的值进行比较 ...

  8. 得到CRC16校验码的常见几个标准的算法及C语言实现

    CRC16常见的标准有以下几种,被用在各个规范中,其算法原理基本一致,就是在数据的输入和输出有所差异,下边把这些标准的差异列出,并给出C语言的算法实现. CRC16_CCITT:多项式x16+x12+ ...

  9. java学习笔记—校验码的实现(15)

    校验码的出现主要的任务是解决表单的重复提交问题. public void doGet(HttpServletRequest request, HttpServletResponse response) ...

  10. Java实现crc16校验 附上校验工具对照。解决长数据校验不正确的问题

    Android与底层硬件通信,进行CRC16校验时,要考虑到无符号整形的原因,java会将超过的值变成负数 C算法: Uint16 crc16 = 0; Uint8  i = 0; Uint16 Cr ...

最新文章

  1. 2022-2028年中国基金业投资分析及前景预测报告
  2. Google Test(GTest)使用方法和源码解析——参数自动填充技术分析和应用
  3. 学python找什么工作-学Python能找到什么工作?这4种工作最热门!
  4. 丹麦奥尔堡大学计算机系博士,丹麦奥尔堡大学招收计算机全奖PHD
  5. C++标准库函数begin和end函数
  6. CentOS各版本更换国内源,一条指令搞定,超简单!
  7. 虚树+树型DP SDOI2011消耗战
  8. HttpClient实现通过url下载文件
  9. [POJ 1006] 生理周期
  10. [免费专栏] Android安全之绕过SSL Pinning抓HTTPS数据
  11. 为什么人家每天睡觉是自然醒,我每天是穷醒?
  12. 粒子滤波(Particle filter)算法简介及MATLAB实现
  13. STM32cubeMX--增量式PID调节电机速度(霍尔编码器)
  14. IO流和NIO流的区别
  15. 无人驾驶车辆控制(三):纯跟踪算法(Pure Pursuit)
  16. 计算机面板里左侧的桌面不见了,WinXP控制面板左侧的切换分类视图不见了如何找回 -电脑资料...
  17. 将 Debian APT 引入 iPhone
  18. 【众说区块链】公链是否一定要发币,Token到底应该怎么理解?
  19. 常用的数据类型有哪些?简单数据类型与复杂数据类型之间的区别?
  20. 111. Minimum Depth of Binary Tree

热门文章

  1. GC类型以及不同类型GC的搭配 1
  2. python取文件后缀
  3. php获取内容中第一张图片地址
  4. 转:jQuery Ajax 实例 全解析
  5. Layout 和 Menu【转】
  6. 始终都要覆盖toString()方法
  7. JAVA-JVM调优标志
  8. IIS SSL证书 指定的登录会话不存在,可能已被终止 HRESULT:0x80070520
  9. 题解报告:hdu 1575 Tr A
  10. [LeetCode] 92. Reverse Linked List II 反向链表II