Java : CRC32 with Examples

CRC32 (Java SE 18 & JDK 18) API Examples.
You will find code examples on most CRC32 methods.


Summary

A class that can be used to compute the CRC-32 of a data stream.

Class diagram

final byte[] b = "abcd".getBytes();
System.out.println(Arrays.toString(b)); // [97, 98, 99, 100]

final var checksum = new CRC32();

checksum.update(b);
System.out.printf("%x%n", checksum.getValue()); // ed82cd11

Constructors

CRC32 ()

Creates a new CRC32 object.

final var checksum = new CRC32();
System.out.printf("%x%n", checksum.getValue()); // 0

checksum.update(123);
System.out.printf("%x%n", checksum.getValue()); // 15d54739

Methods

long getValue ()

Returns CRC-32 value.

final var b = "abcd".getBytes();
System.out.println(Arrays.toString(b)); // [97, 98, 99, 100]

final var checksum = new CRC32();

checksum.update(b);
System.out.printf("%x%n", checksum.getValue()); // ed82cd11
final var checksum = new CRC32();

checksum.update(97);
System.out.printf("%x%n", checksum.getValue()); // e8b7be43

checksum.update(98);
System.out.printf("%x%n", checksum.getValue()); // 9e83486d

checksum.update(99);
System.out.printf("%x%n", checksum.getValue()); // 352441c2

checksum.update(100);
System.out.printf("%x%n", checksum.getValue()); // ed82cd11

void reset ()

Resets CRC-32 to initial value.

final var checksum = new CRC32();
System.out.printf("%x%n", checksum.getValue()); // 0

checksum.update("abcd".getBytes());
System.out.printf("%x%n", checksum.getValue()); // ed82cd11

checksum.reset();
System.out.printf("%x%n", checksum.getValue()); // 0

void update (byte[] b, int off, int len)

Updates the CRC-32 checksum with the specified array of bytes.

final var b = "abcdXYZ".getBytes();
System.out.println(Arrays.toString(b)); // [97, 98, 99, 100, 88, 89, 90]

final var checksum = new CRC32();

checksum.update(b, 0, 4);
System.out.printf("%x%n", checksum.getValue()); // ed82cd11

checksum.reset();
checksum.update(b, 4, 3);
System.out.printf("%x%n", checksum.getValue()); // 7d29f8ed
final var checksum = new CRC32();

checksum.update("abcd".getBytes());
System.out.printf("%x%n", checksum.getValue()); // ed82cd11

checksum.reset();
checksum.update("XYZ".getBytes());
System.out.printf("%x%n", checksum.getValue()); // 7d29f8ed

void update (int b)

Updates the CRC-32 checksum with the specified byte (the low eight bits of the argument b).

Please see getValue().

void update (ByteBuffer buffer)

Updates the CRC-32 checksum with the bytes from the specified buffer.

final var buffer = ByteBuffer.wrap("abcd".getBytes());
System.out.println(buffer); // java.nio.HeapByteBuffer[pos=0 lim=4 cap=4]

final var checksum = new CRC32();

checksum.update(buffer);
System.out.printf("%x%n", checksum.getValue()); // ed82cd11

System.out.println(buffer); // java.nio.HeapByteBuffer[pos=4 lim=4 cap=4]

Methods declared in Checksum

update

Please see the link below.


Related posts

To top of page