Development 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();
  }
}