© 1999-2003, Flemming Koch Jensen
Alle rettigheder forbeholdt |
CRC32 |
Dette kapitel er pt. udelukkende tænkt som en placeholder for et eksempel på hvordan man kan beregne CRC32 af en file (eller anden data) i Java Følgende eksempel viser hvordan man kan bruge klassen CRC32 i Java til at beregne CRC32 af en file: Source 1:
Anvendelse af CRC32-klassen
import java.io.*; import java.util.zip.CRC32; public class Main { public static String getCRC32( String filename ) { try { CRC32 crc = new CRC32(); crc.reset(); DataInputStream input = new DataInputStream( new FileInputStream( filename ) ); byte buffer[] = new byte[ 10000 ]; // vi tager 10KB af gangen int nBytes = input.read( buffer ); while ( nBytes > 0 ) { crc.update( buffer, 0, nBytes ); nBytes = input.read( buffer ); } return Long.toHexString( crc.getValue() ).toUpperCase(); } catch ( IOException e ) { System.out.println( e.getMessage() ); return null; } } public static void main( String argv[] ) { System.out.println( getCRC32( "src/Main.java" ) ); } }Kaldet af reset-metoden er ikke strengt nødvendigt, men er medtaget for at gøre opmærksom på dens eksistens. Den gør det muligt at anvende det samme CRC32-objekt til at beregne CRC32 for en række filer, blot man mellemliggende kalder reset-metoden.