public interface Path
extends Comparable<Path>, Iterable<Path>, Watchable
1. A Path represents a path that is hierarchical and composed of a sequence of directory and file name elements separated by a special separator or delimiter. 2. A root component, that identifies a file system hierarchy, may also be present.
3. The name element that is farthest from the root of the directory hierarchy is the name of a file or directory. The other name elements are directory names.
4. A Path can represent a root, a root and a sequence of names, or simply one or more name elements.
5. A Path is considered to be an empty path if it consists solely of one name element that is empty.
6. Accessing a file using an empty path is equivalent to accessing the default directory of the file system.  method classify:
1.  Path defines the getFileNamegetParentgetRoot, and subpath methods to access the path components or a subsequence of its name elements.
2. In addition to accessing the components of a path, a Path also defines the resolve and resolveSibling methods to combine paths. 
3. The relativize method that can be used to construct a relative path between two paths. Paths can be compared,
and tested against each other using the startsWith and endWith methods.
4. This interface extends Watchable interface so that a directory located by a path can be registered with a WatchService and entries in the directory watched. accessing files:
1. Paths may be used with the Files class to operate on files, directories, and other types of files.
For example, suppose we want a BufferedReader to read text from a file "access.log".
The file is located in a directory "logs" relative to the current working directory and is UTF-8 encoded.
 Path path = FileSystems.getDefault().getPath("logs", "access.log");
BufferReader reader = Files.newBufferedReader(path, StandardCharsets.UTF_8);
Interoperability:
1. The toPath method may be used to obtain a Path from the abstract path name represented by a java.io.File object.
  The resulting Path can be used to operate on the same file as the java.io.File object. 
2. In addition, the toFile method is useful to construct a File from the String representation of a Path.
concurrency:
Implementations of this interface are immutable and safe for use by multiple concurrent threads. method:
方法签名 意义
int compareTo(Path other)  按顺序比较两个路径
boolean endsWith(Path other)  测试一个Path对象是否以给定的path为结尾
boolean endsWith(String other)  测试一个Path对象是否以给定的字符串为结尾,字符串会转换为Path对象
boolean equals(Object other)  
Path getFileName()  
FileSystem getFileSystem()  返回创建Path对象的文件系统对象  
Path getName(int index)  以Path对象返回路径对象中一个名字组成
int getNameCount()  Returns the number of name elements in the path.
Path getParent()  Returns the parent path, or null if this path does not have a parent.
Path getRoot()  Returns the root component of this path as a Path object, or null if this path does not have a root component.
boolean isAbsolute()  Tells whether or not this path is absolute.
Iterator<Path>  iterator()  Returns an iterator over the name elements of this path.
Path normalize()  移除诸如. 和.. 等冗余的路径元素。

WatchKey

register(WatchService watcher, WatchEvent.Kind<?>... events)

 Registers the file located by this path with a watch service.
WatchKey register(WatchService watcher, WatchEvent.Kind<?>[] events, WatchEvent.Modifier... modifiers)  Registers the file located by this path with a watch service.
Path relativize(Path other)  返回用this 进行解析,相对于other 的相对路径。
Path resolve(Path other)  如果other 是绝对路径,那么就返回other ;否则,返回通过连接this 和other 获得的路径。
Path resolve(String other)  如果other 是绝对路径,那么就返回other ;否则,返回通过连接this 和other 获得的路径。
Path resolveSibling(Path other)  如果other 是绝对路径,那么就返回other ;否则,返回通过连接this 的父路径和other 获得的路径。
Path resolveSibling(String other)  如果other 是绝对路径,那么就返回other ;否则,返回通过连接this 的父路径和other 获得的路径。
boolean startsWith(Path other)  类似endsWith
boolean startsWith(String other)  类似endsWith
Path subpath(int beginIndex, int endIndex)  Returns a relative Path that is a subsequence of the name elements of this path.
Path toAbsolutePath()  Returns a Path object representing the absolute path of this path.
File toFile()  Returns a File object representing this path.
Path toRealPath(LinkOption... options)  Returns the real path of an existing file.
URI toUri()  Returns a URI to represent this path.

java.nio.file.Path的更多相关文章

  1. Java JsonPath grab InvalidPathException in code, you must be catching Java 7's java.nio.file.InvalidPathException instead of JsonPath's com.jayway.jsonpath.InvalidPathExceptio

    I am using JsonPath and am able to parse my data and get the values when the path provided is correc ...

  2. Java7 新特性 —— java.nio.file 文件操作

    本文部分摘自 On Java 8 自 Java7 开始,Java 终于简化了文件读写的基本操作,新增了 java.nio.file 库,通过与 Java8 新增的 stream 结合可以使得文件操作变 ...

  3. Docker启动Elasticsearch报错java.nio.file.AccessDeniedException

    报错信息 Caused by: java.nio.file.AccessDeniedException: /usr/share/elasticsearch/data/nodes 问题分析 表面上是说容 ...

  4. java.nio.file.FileSystemException: D:\kafka_2.12-2.1.0\kafka_2.12-2.1.0\logs\__consumer_offsets-30\00000000000000000000.timeindex.cleaned: 另一个程序正在使用此文件,进程无法访问。

    在启动kafka时候报错: java.nio.file.FileSystemException: D:\kafka_2.12-2.1.0\kafka_2.12-2.1.0\logs\__consume ...

  5. 使用java类加载器,报异常java.nio.file.InvalidPathException

    String path = Label.class.getClassLoader().getResource("").getPath(); /F:/idea-Java/ImageD ...

  6. java.nio.file.NoSuchFileException

    springboot +es es 2.1.0 参考这个 https://www.cnblogs.com/yueshutong/p/9381543.html cluster-nodes :改成127. ...

  7. kafka - java.nio.file.FileSystemException

    在启动Kafka时报错无法启动 E:\kafka_2.12-2.3.1\kafka-logs\__consumer_offsets-48\00000000000000000000.timeindex. ...

  8. 2.2.5 NIO.2 Path 和 Java 已有的 File 类

    NIO与IO交互 toPath() File -- Path toFile() Path -- File Demo: import java.io.File; import java.nio.file ...

  9. JAVA基础知识之NIO.2——Path,Paths,Files

    NIO.2 JDK7对NIO进行了重大改进,主要包含以下两方面 新增Path接口,Paths工具类,Files工具类. 这些接口和工具类对NIO中的功能进行了高度封装,大大简化了文件系统的IO编程. ...

随机推荐

  1. C与C++中的常用提高程序效率的方法

    1.用a++和++a及a+=1代替a=a+1,用a--和--a及a-=1代替a=a-1 通常使用若把一个函数定义为内联函数,则在程序编译阶段,编译器就会把每次调用该函数的地方都直接替换为该函数体中的代 ...

  2. 挂FORM时找不到对应的功能(function)

    表单 功能都已经定义,但是在菜单中增加时候没有这个可选的项. 解决办法:由于是功能太多,LOV显示限制为30000,因此将功能名前加CUX,提升其排序即可.也可以修改LOV显示限制数量.

  3. oracle 基础

    1.order by 排序 select * from dept order by desc; --降序 select ename,empno from emp order by empno asc; ...

  4. [SQL入门级] 接上篇,继续查询

    距离上一篇时间隔得蛮久了,这篇继续查询,简单总结一下聚合函数.分组的知识. 一.聚合函数(组函数/多行函数) 何谓多行函数,顾名思义就是函数作用于多行数据得出一个输出结果,什么意思呢?看图: 那么常用 ...

  5. QT 中文显示问题

    在QT4 中,要显示中文,都是要这样写: #include <QTextCodec> QTextCodec::setCodecForTr(QTextCodec::codecForLocal ...

  6. 设置Beyond Compare 为 Git 默认的比较工具

    对于Beyond Compare4,Git版本号在2.2.0之后的,请在Git中依次输入以下命令: git config --global diff.tool bc3 git config --glo ...

  7. 003_关于IntellJ IDE 2016 1. 4的使用

    IDEA 全称 IntelliJ IDEA,是java语言开发的集成环境,IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手.代码自动提示.重构.J2EE支持.各类版本工具( ...

  8. WPF中通过代码设置控件的坐标

    用WPF做贪吃蛇小游戏时,发现了一个问题: 贪吃蛇的移动,我是通过不断刷新Rectangle来实现(贪吃蛇的身体由一组Rectangle组成),因此需要不断调整Rectangle的坐标,但是WPF中没 ...

  9. js封装类

    1.闭包函数中定义基类,使用基类定义类方法 ;var Appkit = function() { //定义类 var obj = new Object(); // 定义方法 obj.isWeixin ...

  10. 求排列组合数C(n,m) φ(゜▽゜*)♪

    我们可以先预处理出1~n的阶乘以及阶乘的逆元: 对于阶乘的逆元,我们可以直接由费马小定理,用快速幂求出: (吐槽快速幂…………一定要开long long,不然会爆零