-
- All Superinterfaces:
-
AttributeView
,FileAttributeView
- All Known Subinterfaces:
-
DosFileAttributeView
,PosixFileAttributeView
public interface BasicFileAttributeViewextends FileAttributeView
文件属性视图,提供许多文件系统通用的基本文件属性集的视图。 基本的文件属性集由BasicFileAttributes
接口定义的强制和可选文件属性组成。通过调用
readAttributes
方法,从文件系统中检索文件属性作为批量操作 。 该类还定义了更新文件时间属性的setTimes
方法。在需要动态访问文件属性的情况下,此属性视图支持的属性具有以下名称和类型:
Name Type "lastModifiedTime" FileTime
"lastAccessTime" FileTime
"creationTime" FileTime
"size" Long
"isRegularFile" Boolean
"isDirectory" Boolean
"isSymbolicLink" Boolean
"isOther" Boolean
"fileKey" Object
getAttribute
方法可用于读取任何这些属性,就像调用readAttributes()
方法一样。setAttribute
方法可用于更新文件的上次修改时间,上次访问时间或创建时间属性,就像调用setTimes
方法一样。- 从以下版本开始:
- 1.7
-
-
方法摘要
所有方法 实例方法 抽象方法 变量和类型 方法 描述 String
name()
返回属性视图的名称。BasicFileAttributes
readAttributes()
将基本文件属性读取为批量操作。void
setTimes(FileTime lastModifiedTime, FileTime lastAccessTime, FileTime createTime)
更新文件上次修改时间,上次访问时间和创建时间属性的任何或全部。
-
-
-
方法详细信息
-
name
String name()
返回属性视图的名称。 此类型的属性视图的名称为"basic"
。- Specified by:
-
name
在接口AttributeView
- 结果
- 属性视图的名称
-
readAttributes
BasicFileAttributes readAttributes() throws IOException
将基本文件属性读取为批量操作。如果所有文件属性都被读作相对于其他文件系统操作的原子操作,则它是特定于实现的。
- 结果
- 文件属性
- 异常
-
IOException
- 如果发生I / O错误 -
SecurityException
- 对于默认提供程序,安装了安全管理器,调用其checkRead
方法以检查对文件的读访问权
-
setTimes
void setTimes(FileTime lastModifiedTime, FileTime lastAccessTime, FileTime createTime) throws IOException
更新文件上次修改时间,上次访问时间和创建时间属性的任何或全部。此方法更新文件的时间戳属性。 这些值将转换为文件系统支持的纪元和精度。 从较细粒度转换为较粗粒度会导致精度损失。 尝试设置不受支持的时间戳或超出基础文件存储支持的范围的值时,此方法的行为未定义。 投掷
IOException
可能会或者不会失败。如果任何的
lastModifiedTime
,lastAccessTime
,或createTime
参数具有值null
那么相应的时间戳没有改变。 当仅更新一些(但不是全部)时间戳属性时,实现可能需要读取文件属性的现有值。 因此,该方法可能不是关于其他文件系统操作的原子操作。 读取和重写现有值也可能导致精度损失。 如果所有的lastModifiedTime
,lastAccessTime
和createTime
参数为null
,则此方法没有任何效果。用法示例:假设我们要更改文件的上次访问时间。
Path path = ... FileTime time = ... Files.getFileAttributeView(path, BasicFileAttributeView.class).setTimes(null, time, null);
- 参数
-
lastModifiedTime
- 新的上次修改时间,或null
不更改值 -
lastAccessTime
- 上次访问时间,或null
不更改值 -
createTime
- 文件的创建时间,或null
不更改值 - 异常
-
IOException
- 如果发生I / O错误 -
SecurityException
- 对于默认提供程序,安装了安全管理器,调用其checkWrite
方法以检查对文件的写访问权 - 另请参见:
-
Files.setLastModifiedTime(java.nio.file.Path, java.nio.file.attribute.FileTime)
-
-