0、说明

用于读Path操作的接口(Path)与实现类(Paths)

1、模块:java.nio.file.Path、java.nio.file.Paths

2、方法

2.1、Paths

只有两个静态方法,用法:Paths.xxx( ... )

Path get( String first , String... more )

用连接符把这些参数中的String连接起来,得到一个对应的Path(和Path.of( ... )相同)

Windows中的连接符是\

Path get( URI uri ) 将一个给定的URI转化为Path对象

2.2、Path

2.2.1、静态方法,用法:Path.xxx( ... )

Path of( String first , String... more)

与Paths.get(...)作用相同

返回一个Path对象

Path of( URI uri )

2.2.2、实例方法,用法:p.xxx( ... )

返回值类型

方法

说明

int compareTo(Path other) 比较两个Path
boolean endsWith(String other) 判断该Path是否以other结尾
boolean endsWith(Path other) 判断该Path是否以另一个Path结尾
boolean equals(Object other) 判断该Path是否和另一个元素相等
Path getFileName() 文件名对应的Path
FileSystem getFileSystem() 返回构造了这个Path的文件系统
Path getName(int index)

返回Path某一级目录的名字

比如 usr\Docs\Test,对应0/1/2分别是usr、Docs、Test

int getNameCount() 返回Path目录有几级,常配合getName(int index)使用
Path getParent() 获取父目录的Path
Path getRoot() 获取根目录的Path
int hashCode() hash code
boolean isAbsolute() 判断该Path是否是绝对路径
Iterator<Path> iterator() 实现迭代器,允许对Path[ ]使用for each遍历
Path normalize() 将路径正规化(即转换为不含.和..的绝对路径)
WatchKey register(WatchService watcher, WatchEvent.Kind<?>... events)  
WatchKey register(WatchService watcher, WatchEvent.Kind<?>[] events, WatchEvent.Modifier... modifiers)  
Path relativize(Path other) 返回两个路径间的相对路径
Path resolve(String other)

如果other是绝对路径,返回other;

如果other是null,返回this;

否则,在this之后拼接other形成新Path

Path resolve(Path other)
Path resolveSibling(String other)

如果other是绝对路径,返回other;

如果other是null,返回this;

否则,在this的父目录下拼接other形成新的Path

Path resolveSibling(Path other)
boolean startsWith(String other) 判断该Path是否以other开头
boolean startsWith(Path other) 判断该Path是否以other开头
Path subPath(int start , int end) 返回从start到end的subpath
Path toAbsolutePath() 返回绝对路径
File toFile() Path→File
Path toRealPath(LinkOption... options)  
String toString() 返回该Path对应的String
URI toUri() 返回该Path对应的URI

正规路径:不含.和..的绝对路径

3、方法说明

最常用:

Path→String:p.toString()

Java:Path与Paths的更多相关文章

  1. Java的Path、Paths和Files

    前言 因为这几天被java.nio的这几个接口和工具类卡到了,就顺便地查了一波文档以及使用方法,这篇其实更像是API的复制粘贴,只不过我在注释里多写了一些output和注意事项,看不惯API的可以选择 ...

  2. 什么是java path环境变量

    参考:https://docs.oracle.com/javase/tutorial/essential/environment/paths.html 从orcle官网的文档中可以看到java pat ...

  3. java IO流 (九) Path、Paths、Files的使用

    1.NIO的使用说明:>Java NIO (New IO,Non-Blocking IO)是从Java 1.4版本开始引入的一套新的IO API,可以替代标准的Java IO AP.>NI ...

  4. [Leetcode][JAVA] Path Sum I && II

    Path Sum Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that addi ...

  5. Ubuntu下增加eclipse菜单图标并配置java path(解决点击图标不能启动eclipse的问题)

    Ubuntu下增加eclipse菜单图标 Ubuntu的菜单图标在/usr/share/applications目录下. 1. 在/usr/share/applications目录下新建eclipse ...

  6. java path

    static{ String path = new Object(){ public String getPath() { return this.getClass().getResource(&qu ...

  7. LeetCode第[62]题(Java):Unique Paths 及扩展

    题目:唯一路径(机器人走方格) 难度:Medium 题目内容: A robot is located at the top-left corner of a m x n grid (marked 'S ...

  8. NIO.2中Path、 Paths、Files类的使用

  9. Java NIO教程 文件系统

    在NIO.2的文件系统中,Path是一切操作的基础.Path准确来说,代表着文件系统中的位置.可以代表一个目录(也就是通常所说的文件夹),也可以代表一个文件. 在新文件系统中,还有一个不得不说的就是F ...

随机推荐

  1. Android开发-记账本布局-实现记账页面功能选择

    记账页面需要软件盘的弹出,时间的显示和记账类型的选择.为了实现选择的效果,点击图片图片发生变化. 需要制作记账类型数据库,并设置单机事件,单机图片,图片变色,代表选中. 至于软键盘的制作,我直接拿来用 ...

  2. AT2657 [ARC078D] Mole and Abandoned Mine

    简要题解如下: 记 \(1\) 到 \(n\) 的路径为关键路径. 注意到关键路径只有一条是解题的关键,可以思考这张图长什么样子. 不难发现关键路径上所有边均为桥,因此大致上是关键路径上每个点下面挂了 ...

  3. SSH 密钥登录

    一.什么是SSH? 简单说,SSH是一种网络协议,用于计算机之间的加密登录. 如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会 ...

  4. Android中常用布局

     1.线性布局  LinearLayout         orientation:方向:vertical,垂直:horizontal,水平         gravity:对齐方式,子控件相对于当前 ...

  5. 虚拟机与Docker

    https://www.cnblogs.com/kex1n/p/6933039.html https://blog.csdn.net/jingzhunbiancheng/article/details ...

  6. 清理缓存的方法 #DF

    移动应用在处理网络资源时,一般都会做离线缓存处理,其中以图片缓存最为典型,其中很流行的离线缓存框架为SDWebImage. 但是,离线缓存会占用手机存储空间,所以缓存清理功能基本成为资讯.购物.阅读类 ...

  7. 扩展NSDate类实现快捷使用 —— 昉

    获取当前日期和时间: +(NSDate *)getCurrentDate{ NSDate *now = [NSDate date]; return now; } 将日期转换为字符串: +(NSStri ...

  8. 9、架构--动静分离、rewrite、HTTPS

    笔记 1.晨考 1.说明反向代理跟负载均衡有哪些区别? 2.负载均衡分配流量的几种方式? 1.轮询 2.权重 3.ip_hash 3.负载均衡部署BBS的步骤 2.昨日问题 3.今日内容 1.资源分离 ...

  9. 扯 C++ 里的 Lambda

    之前写(抄) parsec 的时候, 在重载 operator>> 的时候, operator>> 需要接收一个 lambda, 之后返回一个 Component<R&g ...

  10. 【自动化测试框架】pytest和unitttest你知道多少?区别在哪?该用哪个?

    一.大家熟知的自动化测试框架 Java JUnit.TestNG等等. python PyUnit(unittest).Pytest.Robot Framework等等 二.Pytest介绍 pyte ...