模块  java.base

Interface BasicFileAttributeView

    • 方法详细信息

      • 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可能会或者不会失败。

        如果任何的lastModifiedTimelastAccessTime ,或createTime参数具有值null那么相应的时间戳没有改变。 当仅更新一些(但不是全部)时间戳属性时,实现可能需要读取文件属性的现有值。 因此,该方法可能不是关于其他文件系统操作的原子操作。 读取和重写现有值也可能导致精度损失。 如果所有的lastModifiedTimelastAccessTimecreateTime参数为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)