包 java.nio.file
java.nio.file 包定义了访问文件和文件系统的类。访问文件和文件系统属性的 API 在 java.nio.file.attribute
包中定义。 java.nio.file.spi
包由希望扩展平台默认提供者或构建其他提供者实现的服务提供者实现者使用。
符号链接
许多操作系统和文件系统都支持 symbolic links 。符号链接是一种特殊文件,用作对另一个文件的引用。大多数情况下,符号链接对应用程序是透明的,对符号链接的操作会自动重定向到链接的target。例外情况是删除或重命名/移动符号链接时,在这种情况下删除或删除链接而不是链接的目标。这个包包括对符号链接的支持,其中实现提供了这些语义。文件系统可能支持语义上接近的其他类型,但对这些其他类型链接的支持不包含在此包中。
互操作性
File
类定义了toPath
方法,通过转换java.io.File
对象表示的抽象路径来构造一个Path
。生成的 Path
可用于与 File
对象对同一文件进行操作。 Path
规范提供了有关 Path
和 java.io.File
对象之间的 互操作性 的更多信息。
Visibility
此包中的类提供的文件和文件系统的视图保证与同一 Java 虚拟机中其他实例提供的其他视图一致。然而,由于底层操作系统执行的缓存和网络文件系统协议引起的延迟,该视图可能与其他同时运行的程序看到的文件系统视图一致,也可能不一致。不管这些其他程序是用什么语言编写的,也不管它们是在同一台机器上还是在其他机器上运行,都是如此。任何此类不一致的确切性质取决于系统,因此未指定。
同步 I/O 文件完整性
SYNC
和 DSYNC
选项用于打开文件以要求将文件更新同步写入底层存储设备。在默认提供程序的情况下,文件驻留在本地存储设备上,seekable
通道连接到使用这些选项之一打开的文件,然后调用 write
方法仅保证在所有时返回通过该调用对文件所做的更改已写入设备。这些选项对于确保在系统崩溃时不会丢失关键信息很有用。如果文件不驻留在本地设备上,则不提供此类保证。这种保证是否适用于其他 provider
实现是供应商特定的。
一般异常
除非另有说明,否则将 null
参数传递给此包中任何类或接口的构造函数或方法将导致抛出 NullPointerException
。此外,除非另有说明,否则使用包含 null
元素的数组或集合调用方法将导致 NullPointerException
。
除非另有说明,否则尝试访问文件系统的方法在调用与已为 closed
的 FileSystem
关联的对象时将抛出 ClosedFileSystemException
。此外,在与仅提供只读访问权限的 FileSystem
关联的对象上调用时,任何尝试对文件系统进行写访问的方法都将抛出 ReadOnlyFileSystemException
。
除非另有说明,否则调用由一个 provider
创建的此包中的任何类或接口的方法,其参数是另一个提供者创建的对象,将抛出 ProviderMismatchException
。
可选的特定例外
此包中访问文件系统的类定义的大多数方法都指定在发生 I/O 错误时抛出IOException
。在某些情况下,这些方法为常见情况定义了特定的 I/O 异常。这些例外情况,记为可选的特定例外由可以检测到特定错误的实现抛出。如果无法检测到特定错误,则抛出更一般的 IOException
。
- 自从:
- 1.7
-
类描述文件系统操作被拒绝时抛出的检查异常,通常是由于文件权限或其他访问检查。定义用于测试文件可访问性的访问模式。当文件不能作为原子文件系统操作移动时抛出检查异常。尝试对已关闭的目录流调用操作时抛出未经检查的异常。当尝试对文件调用操作并且文件系统关闭时抛出未经检查的异常。尝试在已关闭的监视服务上调用操作时抛出未经检查的异常。配置如何复制或移动文件的对象。如果在遍历目录中的条目时遇到 I/O 错误,则会抛出运行时异常。当文件系统操作因目录不为空而失败时抛出已检查的异常。DirectoryStream <T>一个对象,用于迭代目录中的条目。由决定是否应接受或过滤目录条目的对象实现的接口。当尝试创建文件或目录并且该名称的文件已经存在时抛出检查异常。此类专门包含对文件、目录或其他类型的文件进行操作的静态方法。文件存储。提供文件系统的接口,是对象访问文件和文件系统中其他对象的工厂。尝试创建已存在的文件系统时抛出运行时异常。当文件系统操作对一个或两个文件失败时抛出。遇到文件系统循环或循环时抛出已检查的异常。找不到文件系统时抛出运行时异常。文件系统的工厂方法。定义文件树遍历选项。FileVisitor <T>文件的访问者。
FileVisitor
的结果类型。当路径字符串无法转换为Path
时抛出未经检查的异常,因为路径字符串包含无效字符,或者路径字符串因其他文件系统特定原因而无效。定义有关如何处理符号链接的选项。用于链接创建操作的Permission
类。尝试访问不存在的文件时抛出已检查的异常。当针对目录的文件系统操作因文件不是目录而失败时抛出已检查异常。当文件系统操作因文件不是符号链接而失败时抛出已检查的异常。配置如何打开或创建文件的对象。可用于在文件系统中定位文件的对象。由对路径执行匹配操作的对象实现的接口。当尝试调用一个文件系统提供程序创建的对象上的方法时抛出未经检查的异常,参数由另一个文件系统提供程序创建。找不到所需类型的提供程序时抛出运行时异常。尝试更新与read-only
FileSystem
关联的对象时抛出未经检查的异常。DirectoryStream
定义了对相对于打开目录的文件的操作。一个简单的文件访问者,默认行为是访问所有文件并重新抛出 I/O 错误。定义标准复制选项。定义标准打开选项。定义 standard 事件种类。一个可以注册到监视服务的对象,以便它可以 watched 用于更改和事件。WatchEvent <T>使用WatchService
注册的对象的事件或重复事件。WatchEvent.Kind <T>一种事件类型,用于识别目的。限定Watchable
如何注册到WatchService
的事件修饰符。代表watchable
对象与WatchService
的注册的令牌。watches 为更改和事件注册对象的监视服务。