Javaと情熱のあいだ

Play Frameworkはじめました

1.42、1.5でディスクの空領域のサイズを取得する方法

Javaでディスクの空き容量を取得する方法は1.6からjava.ioで実装されてます。
親切なことに全体、使用、空領域のサイズが取得できます。

    File file = new File("c:/");
    System.out.println(file.getTotalSpace());
    System.out.println(file.getFreeSpace());
    System.out.println(file.getUsableSpace());

でも、1.42と1.5では実装されていないのでcommons-ioのFileSystemUtils
を使って取得する。Windows、UNIXLinuxSolarisMacOSX
ほとんどのOSで取得できる。

System.out.println(FileSystemUtils.freeSpaceKb("C:/"));
System.out.println(FileSystemUtils.freeSpaceKb("D:/") / 1024);

空領域しか取得できないが欠点。