ファイルサイズの取得

指定したファイルの大きさは,FileInputStream.availavle()かFile.length()で取得できる.違いは良く分からない.

import java.io.FileInputStream;
import java.io.File;

public class Sam{
  public static void main(String[] args) throws Exception{
    System.out.println((new FileInputStream(args[0]).available()));
    // http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/io/FileInputStream.html#available()

    System.out.println((new File(args[0])).length());
    // http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/io/File.html#length()
  }
}