Java语言实现CRC32校验
来源:互联网 发布:17年10美国非农数据 编辑:程序博客网 时间:2024/05/22 13:57
源代码:
<span style="font-size:14px;">package crcNew;public class CRC32 {private int crc;private String mx;public CRC32(String mx) {crc = 0x00000000;this.mx = mx;getCrc();}private void crc(byte data) {int point = 0b10000000;while (point > 0) {if ((((data & point) == point) ^ ((crc & 0x80000000) == 0x80000000))) {crc = (crc << 1) ^ 0x04c11d87;} else {crc <<= 1;}point >>= 1;}}private void getCrc() {byte[] bytes = mx.getBytes();for (int i = 0; i < bytes.length; i++) {crc(bytes[i]);}}public String getCRC() {return Integer.toHexString(crc);}}</span>
测试代码:
package crcNew;public class TestCRC32 {public static void main(String[] args) {CRC32 c = new CRC32("12");System.out.println(c.getCRC());}}
结果:
注意:由于传输顺序不同结果会不同,应区别是从低位到高位校验还是从高位到低位校验
也可直接调用Java内置CRC32对象,可直接得出校验值,该方法与rar压缩软件的校验值一致:
<span style="font-size:14px;">package crcNew;import java.util.zip.CRC32;public class CheckCRC {public static void main(String[] args) {java.util.zip.CRC32 crc = new CRC32();crc.update("12".getBytes());System.out.println(Long.toHexString(crc.getValue()));}}</span>
0 0
- Java语言实现CRC32校验
- java 实现CRC32校验
- java 实现CRC32校验
- java 实现CRC32校验
- crc32校验的c语言实现
- Java 实现CRC32校验和MD5
- Java查表法实现CRC32校验算法
- CRC32校验C实现
- 循环冗余校验 CRC32 的 C 语言实现
- C语言 CRC32校验算法
- CRC32校验算法-C实现
- CRC32校验原理及实现
- CRC32校验算法-C实现
- CRC32校验算法-C实现
- CRC32校验原理及实现
- C语言 一个crc32校验算法
- CRC32校验
- crc32校验
- 怎样把shell terminal 分为多窗口
- 优秀博客主页
- 云栖会议.武汉峰会(三)
- 第十四周上机实践——项目3-数组类模板
- linux设备驱动程序之简单字符设备驱动
- Java语言实现CRC32校验
- React Native进行签名打包Apk
- Java枚举的7种常见用法
- [Python编程]正则表达式
- 创建简单springMVC项目
- 【java基础】String Pool
- 没有需求,我们开发个毛?
- html的经验
- spark1.6从hdfs上读取文件运行wordcount