Java I/O How to - Get the free/total/usable space for a drive








Question

We would like to know how to get the free/total/usable space for a drive.

Answer

/*from   w  w  w  .j  a v  a 2s . c  o  m*/
import java.io.File;

public class Main {
  public static void main(String[] args) {
    File[] roots = File.listRoots();

    for (int i = 0; i < roots.length; i++) {
      System.out.println(roots[i]);
      System.out.println("Free space = " + roots[i].getFreeSpace());
       System.out.println("Usable space = " + roots[i].getUsableSpace());
       System.out.println("Total space = " + roots[i].getTotalSpace());
      System.out.println();
    }
  }
}

The code above generates the following result.