List system drive & their total, free, used space in java (example)

  • List all system drives in java.
    • We will find out the free (available) , used and total space of each drive.
  • We will list system drives using File.listRoots api.
  • Find out the free (available), used and total space of each drive using following methods.
S.No. API Description
1 getTotalSpace Returns the size of the partition named by this abstract pathname.
2 getFreeSpace Returns the number of unallocated bytes in the partition named by this abstract path name.
3 getUsableSpace Returns the number of bytes available to this virtual machine on the partition named by this abstract pathname.
  • We will format the disk space in GB.
    • Similarly, we can format disk space in KB or MB.

Program: List system drive & their total, free, used space in java

package org.learn.io;

import java.io.File;

public class ListDrivesAndSpace {

    public static void main(String[] args) {

        double GB = 1024D * 1024D * 1024D;
        //Format drive space as per your need
        //double MB = 1024D * 1024D;
        //double KB = 1024D;

        File[] listDrives = File.listRoots();
        System.out.println("Listing System drives:");
        for(File drive: listDrives) {
            System.out.printf("Drive: %s\n",drive);
            System.out.printf("Total Space: %f GB\n",drive.getTotalSpace()/GB);
            System.out.printf("Free Space: %f GB\n",drive.getFreeSpace()/GB);
            System.out.printf("Usable Space: %f GB\n\n",drive.getUsableSpace()/GB);
        }
    }
}

Output: List system drive & their total, free, used space in java

Listing System drives:
Drive: C:\
Total Space: 234.728512 GB
Free Space: 186.074795 GB
Usable Space: 186.074795 GB

Drive: D:\
Total Space: 120.236324 GB
Free Space: 104.201542 GB
Usable Space: 104.201542 GB

Drive: E:\
Total Space: 120.971676 GB
Free Space: 67.195110 GB
Usable Space: 67.195110 GB
Scroll to Top