Java - File getFreeSpace() Method



Description

The Java File getFreeSpace() method returns the number of unallocated bytes in the partition named by this abstract path name. The returned number of unallocated bytes are not a guarantee. The count of unallocated bytes is likely to be accurate immediately after this call and inaccurate by any external I/O operations.

Declaration

Following is the declaration for java.io.File.getFreeSpace() method −

public long getFreeSpace()

Parameters

NA

Return Value

This method returns unallocated bytes on the partition.

Exception

SecurityException − If a security manager exists and it denies RuntimePermission("getFileSystemAttributes") or its SecurityManager. checkRead(String) denies read access to the file name by this abstract pathname.

Example 1

The following example shows the usage of Java File getFreeSpace() method. We've created a File reference. Then we're creating a File Object using F:/test directory which is present in the provided location. Now using getFreeSpace() method, we're getting the unallocated bytes in the partition.

package com.tutorialspoint;
import java.io.File;
public class FileDemo {
   public static void main(String[] args) {      
      File f = null;
      long v;
      boolean bool = false;
      
      try {
         // create new file
         f = new File("F:\\test.txt");
         
         // get number of unallocated bytes
         v = f.getFreeSpace();
         
         // true if the file path exists
         bool = f.exists();
         
         // if file exists
         if(bool) {
         
            // prints
            System.out.print("number of unallocated bytes: "+v);
         }
         
      } catch(Exception e) {
         // if any error occurs
         e.printStackTrace();
      }
   }
}

Output

Let us compile and run the above program, this will produce the following result −

number of unallocated bytes: 163280998400

Example 2

The following example shows the usage of Java File getFreeSpace() method. We've created a File reference. Then we're creating a File Object using C:/test directory which is present in the provided location. Now using getFreeSpace() method, we're getting the unallocated bytes in the partition.

package com.tutorialspoint;
import java.io.File;
public class FileDemo {
   public static void main(String[] args) {      
      File f = null;
      long v;
      boolean bool = false;
      
      try {
         // create new file
         f = new File("C:\\test");
         
         // get number of allocated bytes
         v = f.getFreeSpace();
         
         // true if the file path exists
         bool = f.exists();
         
         // if file exists
         if(bool) {
         
            // prints
            System.out.print("number of allocated bytes: "+v);
         }
         
      } catch(Exception e) {
         // if any error occurs
         e.printStackTrace();
      }
   }
}

Output

Let us compile and run the above program, this will produce the following result −

number of allocated bytes: 3958620160
java_file_class.htm
Advertisements