DBMNG数据库管理与应用

书籍是全世界的营养品。生活里没有书籍,就好像没有阳光;智慧里没有书籍,就好像鸟儿没有翅膀。
当前位置:首页 > MySQL > 常见问题

文件属性接口

20.3.4 文件属性接口

与文件关联的是一套属性。这些属性包括文件的创建时间、最后一次修改时间、文件是否是目录以及文件的大小等内容。NIO将文件属性组织到几个接口中。属性是通过在java.nio.file.attribute包中定义的接口层次表示的。顶部是BasicFileAttributes,该接口封装了在各种文件系统中都通用的一组属性。表20-8显示了BasicFileAttributes接口定义的方法。

表20-8 BasicFileAttributes接口定义的方法

 

有两个接口派生自BasicFileAttributes:DosFileAttributes和PosixFileAttributes。DosFile-Attributes描述了与FAT文件系统相关的那些属性,FAT文件系统最初是由DOS定义的。DosFileAttributes接口定义的方法如表20-9所示。

表20-9 DosFileAttributes接口定义的方法

 

PosixFileAttributes封装了POSIX标准定义的属性(POSIX代表Portable Operating System Interface,即轻便型操作系统接口),该接口定义的方法如表20-10所示。

表20-10 PosixFileAttributes接口定义的方法

 

访问文件属性的方式有多种。第一种方式,可以通过readAttributes()方法获取用于封装文件属性的对象,该方法是由Files类定义的静态方法,它的其中一种形式如下所示:

 

这个方法返回一个指向对象的引用,该对象标识了与path传递的文件相关联的属性。使用attrType参数作为Class对象指定特性类型的属性。例如,为了获取基本文件属性,向attrType传递BasicFileAttributes.class;对于DOS属性,使用DOSFileAttributes.class;对于POSIX属性,使用PosixFileAttributes.class。可选的链接选项是通过opts传递的。如果没有指定该选项,就使用伴随一个符号链接。该方法返回指向所请求属性的引用。如果请求的属性类型不可用,就会抛出UnsupportedOperationException异常。可以使用返回的对象访问文件属性。

访问文件属性的第二种方式是调用Files类定义的getFileAttributeView()方法。NIO定义了一些属性视图接口,包括AttributeView、BasicFileAttributeView、DosFileAttributeView、PosixFileAttributeView等等。尽管在本章不会使用这些属性视图,但是在有些情况下会发现它们很有帮助。

在有些情况下,不需要直接使用文件属性接口,因为Files类提供了一些访问文件属性的静态的便利方法。例如File类提供了isHidden()和isWritable()这类方法。

并不是所有的文件系统都支持所有可能的属性,理解这一点很重要。例如,DOS文件属性应用于最初由DOS定义的FAT文件系统。广泛应用于各种文件系统的属性是由BasicFileAttributes接口描述的。因此,在本章的例子中使用这些属性。

本站文章内容,部分来自于互联网,若侵犯了您的权益,请致邮件chuanghui423#sohu.com(请将#换为@)联系,我们会尽快核实后删除。
Copyright © 2006-2023 DBMNG.COM All Rights Reserved. Powered by DEVSOARTECH            豫ICP备11002312号-2

豫公网安备 41010502002439号