Java SE 6.0中File类新方法的使用教程

90 阅读2分钟

在Java SE 6.0中,File 类得到了增强,包括提供磁盘使用信息的新方法。

  • getTotalSpace()
  • getFreeSpace()
  • getUsableSpace()

getTotalSpace()

getTotalSpace 方法提供了关于一个特定文件的分区大小的信息,单位是字节。

getFreeSpace()

getFreeSpace 方法提供了关于特定文件分区中仍未使用的可用空间的信息,单位为字节。

getUsableSpace()

getFreeSpace 类似,getUsableSpace 方法进一步检查操作系统的限制和与文件相关的可用写入权限。

这段代码是如何使用getTotalSpacegetFreeSpacegetUsableSpace 方法的一个例子。

import java.io.*;

在读、写或执行File 对象时,用于指定限制或权限的其他方法是

  • setWritable()
  • setReadable()
  • setExecutable():

setWritable()

setWritable 方法指定了对File 对象进行写操作的权限。这个方法被重载如下:
setWritable(boolean writable)
setWritable(boolean writable, boolean ownerOnly)

第一个方法用于指定文件是否可写。第二个方法加强了第一个方法,指定了写权限是否只适用于所有者。

setReadable()

setReadable 方法指定对一个File 对象进行读操作的权限。这个方法被重载如下:
setReadable(boolean readable)
setReadable(boolean readable, boolean ownerOnly)
第一个方法指定文件是否可以被访问。第二个方法加强了第一个方法,指定读取权限是否只适用于所有者。

如果底层文件系统不能区分所有者的阅读权限和其他人的阅读权限,那么该权限将适用于所有人,而不考虑这个值。

setExecutable():

setExecutable 方法指定了正在执行的File 对象的执行权限。这个方法被重载如下:
setExecutable(boolean executable)   setExecutable(boolean executable, boolean ownerOnly)

用于测试文件是否可以被执行的方法是canExecute() 方法。

这段代码是一个关于如何使用setWritable() 的例子。

import java.io.*;

canWrite 方法用于检查文件是否可以被编辑或只读(其中setWritable() 被设置为false )。