FileStore 表示存储池、设备、分区、卷、具体文件系统或其他实现特定的文件存储方式。通过调用getFileStore 方法获取存储文件的FileStore,或者可以通过调用getFileStores 方法枚举所有文件存储。
除了此类定义的方法之外,文件存储还可以支持一个或多个 FileStoreAttributeView 类,这些类提供一组文件存储属性的只读或可更新视图。
- 自从:
- 1.7
-
构造方法总结
构造方法 -
方法总结
修饰符和类型方法描述abstract ObjectgetAttribute(String attribute) 读取文件存储属性的值。long返回此文件存储中每个块的字节数。abstract <V extends FileStoreAttributeView>
VgetFileStoreAttributeView(Class<V> type) 返回给定类型的FileStoreAttributeView。abstract long返回文件存储的大小(以字节为单位)。abstract long返回文件存储中未分配的字节数。abstract long返回文件存储上此 Java 虚拟机可用的字节数。abstract boolean告知此文件存储是否为只读。abstract Stringname()返回此文件存储的名称。abstract booleansupportsFileAttributeView(Class<? extends FileAttributeView> type) 告知此文件存储是否支持由给定文件属性视图标识的文件属性。abstract boolean告知此文件存储是否支持由给定文件属性视图标识的文件属性。abstract Stringtype()返回此文件存储的 type。
-
构造方法详细信息
-
FileStore
protected FileStore()初始化此类的新实例。
-
-
方法详情
-
name
返回此文件存储的名称。名称的格式是高度特定于实现的。它通常是存储池或卷的名称。此方法返回的字符串可能与
toString方法返回的字符串不同。- 返回:
- 此文件存储的名称
-
type
返回此文件存储的 type。此方法返回的字符串格式是高度特定于实现的。例如,它可能指示使用的格式或文件存储是本地的还是远程的。- 返回:
- 表示此文件存储类型的字符串
-
isReadOnly
public abstract boolean isReadOnly()告知此文件存储是否为只读。如果文件存储不支持写入操作或对文件进行其他更改,则它是只读的。任何尝试创建文件、打开现有文件进行写入等操作都会导致抛出IOException。- 返回:
true当且仅当此文件存储是只读的
-
getTotalSpace
返回文件存储的大小(以字节为单位)。如果文件存储中的总字节数大于Long.MAX_VALUE,则返回Long.MAX_VALUE。- 返回:
- 文件存储的大小,以字节为单位
- 抛出:
IOException- 如果发生 I/O 错误
-
getUsableSpace
返回文件存储上此 Java 虚拟机可用的字节数。如果可用字节数大于Long.MAX_VALUE,则返回Long.MAX_VALUE。返回的可用字节数是一个提示,但不能保证可以使用这些字节中的大部分或任何字节。在获得空间属性后,可用字节数最有可能是准确的。它可能会因任何外部 I/O 操作而变得不准确,包括在该 Java 虚拟机之外的系统上进行的操作。
- 返回:
- 可用字节数
- 抛出:
IOException- 如果发生 I/O 错误
-
getUnallocatedSpace
返回文件存储中未分配的字节数。如果未分配的字节数大于Long.MAX_VALUE,则返回Long.MAX_VALUE。返回的未分配字节数是一个提示,但不能保证可以使用这些字节中的大部分或任何字节。获得空间属性后,未分配字节数最有可能立即准确。它可能会因任何外部 I/O 操作而变得不准确,包括在该虚拟机之外的系统上进行的操作。
- 返回:
- 未分配的字节数
- 抛出:
IOException- 如果发生 I/O 错误
-
getBlockSize
返回此文件存储中每个块的字节数。文件存储通常组织成离散的字节序列,称为积木.块是文件存储的最小存储单元。每个读写操作都是在多个块上执行的。
- 实现要求:
-
此类中的实现抛出
UnsupportedOperationException。 - 返回:
- 表示此文件存储的块大小的正值,以字节为单位
- 抛出:
IOException- 如果发生 I/O 错误UnsupportedOperationException- 如果不支持该操作- 自从:
- 10
-
supportsFileAttributeView
告知此文件存储是否支持由给定文件属性视图标识的文件属性。调用此方法来测试文件存储是否支持
BasicFileAttributeView将始终返回true。在默认提供程序的情况下,当文件存储不是本地存储设备时,此方法不能保证给出正确的结果。其原因是特定于实现的,因此未指定。- 参数:
type- 文件属性视图类型- 返回:
true当且仅当支持文件属性视图时
-
supportsFileAttributeView
告知此文件存储是否支持由给定文件属性视图标识的文件属性。调用此方法来测试文件存储是否支持
BasicFileAttributeView,由名称“basic”标识,将始终返回true。在默认提供程序的情况下,当文件存储不是本地存储设备时,此方法不能保证给出正确的结果。其原因是特定于实现的,因此未指定。- 参数:
name- 文件属性视图的name- 返回:
true当且仅当支持文件属性视图时
-
getFileStoreAttributeView
返回给定类型的FileStoreAttributeView。此方法旨在用于文件存储属性视图定义类型安全方法以读取或更新文件存储属性的情况。
type参数是所需属性视图的类型,如果支持,该方法将返回该类型的实例。- 类型参数:
V-FileStoreAttributeView类型- 参数:
type- 属性视图对应的Class对象- 返回:
-
指定类型的文件存储属性视图或
null如果属性视图不可用
-
getAttribute
读取文件存储属性的值。attribute参数标识要读取的属性并采用以下形式:视图名称:属性名
其中字符':'代表它自己。视图名称是标识一组文件属性的
AttributeView的name。属性名是属性的名称。使用示例:假设我们想知道是否启用了 ZFS 压缩(假设支持“zfs”视图):
boolean compression = (Boolean)fs.getAttribute("zfs:compression");- 参数:
attribute- 要读取的属性- 返回:
-
属性值;
null可能对某些属性有效 - 抛出:
UnsupportedOperationException- 如果属性视图不可用或不支持读取属性IOException- 如果发生 I/O 错误
-