Java tutorial
import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.zip.CRC32; import java.util.zip.Checksum; public class MainClass { public static void main(String[] args) throws IOException { FileInputStream fin = new FileInputStream(args[0]); System.out.println(args[0] + ":\t" + getCRC32(fin)); fin.close(); } public static long getCRC32(InputStream in) throws IOException { Checksum cs = new CRC32(); // more efficient to read chunks of data at a time for (int b = in.read(); b != -1; b = in.read()) { cs.update(b); } return cs.getValue(); } }