Java.io.File.getFreeSpace() 方法

描述

java.io.File.getFreeSpace() 方法返回此抽象路径名命名的分区中未分配的字节数。 返回的未分配字节数不是保证。 未分配字节的计数可能在此调用后立即准确,但任何外部 I/O 操作都不准确。


声明

以下是 java.io.File.getFreeSpace() 方法的声明 −

public long getFreeSpace()

参数

NA


返回值

此方法返回分区上未分配的字节。


异常

SecurityException − 如果安全管理器存在并且它拒绝 RuntimePermission("getFileSystemAttributes") 或其 SecurityManager。 checkRead(String) 拒绝通过这个抽象路径名读取文件名。


示例

下面的例子展示了 java.io.File.getFreeSpace() 方法的使用。

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.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();
      }
   }
}

假设我们有一个文本文件c:/test.txt,其内容如下。 该文件将用作我们示例程序的输入 −

ABCDEFGHIJKLMNOPQRSTUVWXYZ

让我们编译并运行上面的程序,这将产生下面的结果 −

number of unallocated bytes: 87738191872