模块 java.base

包 java.nio.file


java.nio.file
定义Java虚拟机访问文件、文件属性和文件系统的接口和类。

java.nio.file 包定义了访问文件和文件系统的类。访问文件和文件系统属性的 API 在 java.nio.file.attribute 包中定义。 java.nio.file.spi 包由希望扩展平台默认提供者或构建其他提供者实现的服务提供者实现者使用。

符号链接

许多操作系统和文件系统都支持 symbolic links 。符号链接是一种特殊文件,用作对另一个文件的引用。大多数情况下,符号链接对应用程序是透明的,对符号链接的操作会自动重定向到链接的target。例外情况是删除或重命名/移动符号链接时,在这种情况下删除或删除链接而不是链接的目标。这个包包括对符号链接的支持,其中实现提供了这些语义。文件系统可能支持语义上接近的其他类型,但对这些其他类型链接的支持不包含在此包中。

互操作性

File 类定义了toPath 方法,通过转换java.io.File对象表示的抽象路径来构造一个Path 。生成的 Path 可用于与 File 对象对同一文件进行操作。 Path 规范提供了有关 Pathjava.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