java crc_JAVA版CRC校验
时间: 2023-10-02 12:08:44 浏览: 167
以下是Java版的CRC校验代码示例:
```java
public class CRCUtil {
private static final int CRC_INIT = 0xFFFF;
private static final int POLY = 0xA001;
/**
* 计算CRC校验码
*
* @param data 数据
* @return CRC校验码
*/
public static int calculateCRC(byte[] data) {
int crc = CRC_INIT;
for (byte b : data) {
crc ^= (int) b & 0xFF;
for (int i = 0; i < 8; i++) {
if ((crc & 0x0001) != 0) {
crc = (crc >> 1) ^ POLY;
} else {
crc >>= 1;
}
}
}
return crc;
}
}
```
使用示例:
```java
byte[] data = {0x01, 0x02, 0x03, 0x04};
int crc = CRCUtil.calculateCRC(data);
System.out.println(Integer.toHexString(crc));
```
注意:CRC校验码的字节顺序可能是大端或小端,具体要根据实际情况来确定。
阅读全文