FileDocCategorySizeDatePackage
DigestRunnable.javaAPI DocExample1120Sun Dec 12 10:51:18 GMT 2004None

DigestRunnable

public class DigestRunnable extends Object implements Runnable

Fields Summary
private File
input
Constructors Summary
public DigestRunnable(File input)

   this.input = input;
  
Methods Summary
public static voidmain(java.lang.String[] args)

  
    for (int i = 0; i < args.length; i++) {
      File f = new File(args[i]);
      DigestRunnable dr = new DigestRunnable(f);
      Thread t = new Thread(dr);
      t.start();
    }
  
  
public voidrun()

    try {
      FileInputStream in = new FileInputStream(input);
      MessageDigest sha = MessageDigest.getInstance("SHA");
      DigestInputStream din = new DigestInputStream(in, sha);
      int b;
      while ((b = din.read()) != -1) ;
      din.close();
      byte[] digest = sha.digest();
      StringBuffer result = new StringBuffer(input.toString());
      result.append(": ");
      for (int i = 0; i < digest.length; i++) {
        result.append(digest[i] + " ");
      }
      System.out.println(result);
    }
    catch (IOException ex) {
      System.err.println(ex);
    }
    catch (NoSuchAlgorithmException ex) {
      System.err.println(ex);
    }