2012-01-04 14 views
95

可能性の重複:どのようにJavaでのファイルサイズを取得する

File f = new File(path); 

私が手にするにはどうすればよい:私はFileオブジェクトをインスタンス化するために、このコードを使用し
Size of folder or file

このファイルのサイズ?

getUsableSpace(),getTotalSpace()getFreeSpace()の違いは何ですか?

+2

あなたの質問に答えた既存の質問を検索することも*試みましたか? – Bohemian

+4

に依存します。中央または東部地域では、ジャワ語を使用する。残りはインドネシア語を使用してください。ほとんどのジャワスピーカー(アウトライヤーを除く)もインドネシア語を話します。待って、何? –

答えて

175

Fileクラスでlength()メソッドを使用します。 javadocsより:

この抽象パス名で示されるファイルの長さを返します。このパス名がディレクトリを示す場合、戻り値は指定されていません。質問の後半部分について

、ストレートFile年代ののjavadocから:

  • getUsableSpace()

  • この抽象パス名がパーティション上で、この仮想マシンで使用可能なバイト数を返します
  • getTotalSpace()この抽象パス名で指定されたパーティションのサイズを返す

31

あなたはgetUsableSpace(との違いについては

long length = f.length(); 

を試してみました)、getTotalSpace()、getFreeSpace()、J2SE 1.6でthis強化を見てみましょう

+2

上記のリンクが壊れているようです。 [この記事(http://www.oracle.com/technetwork/articles/javase/enhancements-136788)html)に類似の情報が含まれているようです。 – GreenGiant

14

この抽象パス名で指定されたパーティションに割り当てられていないバイト数を返しますは、簡単にGoogleをしました。

long size = f.length(); 

、あなたがこれを行うのファイルサイズを確認することを思わあなたが掲示三つの方法の違いは here

getFreeSpace()とgetTotalSpace(見つけることができます)かなり自明、getUsableSpace(ある)ようですJVMが使用できるスペースであることが必要です。ほとんどの場合、空き容量と同じになります。

+2

**このコードはこのサイトでのみ見つかりました。非常に便利です** public static long folderSize(ファイルディレクトリ){ long length = 0; (ファイルファイル:directory.listFiles()){ if(file.isFile()) length + = file.length(); else length + = folderSize(file); } 戻り長さ; } –

関連する問題