Java - File getUsableSpace() 方法



描述

Java File getUsableSpace() 方法返回此抽象名称命名的分区上,此虚拟机可用的字节数。此方法通常提供对实际上可以写入多少新数据的更准确估计,因为此方法会检查写入权限和其他操作系统限制。

声明

以下是 java.io.File.getUsableSpace() 方法的声明:

public long getUsableSpace()

参数

返回值

该方法返回分区上可用的字节数。

异常

SecurityException - 如果已安装安全管理器并且它拒绝 RuntimePermission("getFileSystemAttributes") 或其 SecurityManager.checkRead(String) 方法拒绝对文件的读取访问权限。

示例 1

以下示例演示了 Java File getUsableSpace() 方法的使用。我们创建了一个 File 引用。然后,我们使用提供的路径中存在的 F:/test 目录创建一个 File 对象。现在,使用 getUsableSpace() 方法,我们获取分区中可用的字节数。

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 usable bytes
         v = f.getUsableSpace();
         
         // true if the file path exists
         bool = f.exists();
         
         // if file exists
         if(bool) {
         
            // prints
            System.out.print("number of usable bytes: "+v);
         }
         
      } catch(Exception e) {
         // if any error occurs
         e.printStackTrace();
      }
   }
}

输出

让我们编译并运行以上程序,这将产生以下结果:

number of usable bytes: 163281137664

示例 2

以下示例演示了 Java File getUsableSpace() 方法的使用。我们创建了一个 File 引用。然后,我们使用提供的路径中存在的 C:/test 目录创建一个 File 对象。现在,使用 getUsableSpace() 方法,我们获取分区中可用的字节数。

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 usable bytes
         v = f.getUsableSpace();
         
         // true if the file path exists
         bool = f.exists();
         
         // if file exists
         if(bool) {
         
            // prints
            System.out.print("number of usable bytes: "+v);
         }
         
      } catch(Exception e) {
         // if any error occurs
         e.printStackTrace();
      }
   }
}

输出

让我们编译并运行以上程序,这将产生以下结果:

number of usable bytes: 4245991424
java_file_class.htm
广告