Module  java.base
软件包  java.nio.file

Class Paths



  • public final class Paths
    extends Object
    该类完全由返回一个静态方法Path通过转换路径字符串或URI
    从以下版本开始:
    1.7
    • 方法详细信息

      • get

        public static Path get​(String first,
                               String... more)
        将路径字符串或连接到路径字符串的字符串序列转换为Path 如果more没有指定任何元素,那么first参数的值是要转换的路径字符串。 如果more指定一个或多个元素,则每个非空字符串(包括first )被认为是名称元素的序列(参见Path ),并被连接以形成路径字符串。 关于字符串如何连接的细节是提供者特定的,但通常将使用name-separator作为分隔符来连接。 例如,如果名称分隔符为“ / ”并且调用了getPath("/foo","bar","gus") ,则路径字符串"/foo/bar/gus"将转换为Path 一个Path表示空路径如果返回first为空字符串,并且more不包含任何非空字符串。

        Path是通过调用default default FileSystemgetPath方法获得的。

        请注意,虽然这种方法非常方便,但使用它将意味着假定引用默认的FileSystem并限制调用代码的实用性。 因此,它不应该用于旨在灵活重用的库代码。 更灵活的替代方法是使用现有的Path实例作为锚点,例如:

          Path dir = ...
             Path path = dir.resolve("file"); 
        参数
        first - 路径字符串或路径字符串的初始部分
        more - 要连接的附加字符串以形成路径字符串
        结果
        由此产生 Path
        异常
        InvalidPathException - 如果路径字符串不能转换为 Path
        另请参见:
        FileSystem.getPath(java.lang.String, java.lang.String...)
      • get

        public static Path get​(URI uri)
        将给定的URI转换为Path对象。

        该方法遍历installed提供程序来定位由给定URI的URI scheme标识的提供程序。 比较URI方案而不考虑情况。 如果提供者被发现,则调用其getPath方法来转换URI。

        在由URI方案“file”标识的默认提供者的情况下,给定的URI具有非空路径组件,以及未定义的查询和片段组件。 权限组件是否可以存在是平台特定的。 返回的Pathdefault文件系统相关联。

        默认提供商为File类提供了类似的往返保证。 对于给定的Path p,这是有保证的

        Paths.get( p . toUri ()).equals( p . toAbsolutePath ())
        只要原Path ,该URI ,新Path都在(可能是不同的调用)相同的Java虚拟机创建。 其他提供者是否提供任何保证是提供者特定的,因此未指定。
        参数
        uri - 要转换的URI
        结果
        由此产生 Path
        异常
        IllegalArgumentException - 如果uri参数的前提条件不成立。 URI的格式是提供者特定的。
        FileSystemNotFoundException - 由URI标识的文件系统不存在,不能自动创建,或者由URI的方案组件标识的提供程序未安装
        SecurityException - 如果安装了一个安全管理器,并且它拒绝访问文件系统的未指定权限