java nio 笔记

Path接口中resolve方法的作用相当于把当前路径当成父目录,而把参数中的路径当成子目录或是其中的文件,进行解析之后得到一个新路径;

resolveSibling方法的作用与resolve方法类似,只不过把当前路径的父目录当成解析时的父目录;

relativize方法的作用与resolve方法正好相反,用来计算当前路径相对于参数中给出的路径的相对路径;

subpath方法用来获取当前路径的子路径,参数中的序号表示的是路径中名称元素的序号;

startsWithendsWith方法用来判断当前路径是否以参数中的路径开始或结尾。

在一般的路径中,“.”和“..”分别用来表示当前目录和上一级目录。通过normalize方法可以去掉路径中的“.”和“..”。所有这些方法的返回值都是Path接口的实现对象,因此这些方法可以很容易地级联起来。

//代码清单3-17 Path接口的使用示例
public void usePath() {
    Path path1 = Paths.get("folder1", "sub1");
    Path path2 = Paths.get("folder2", "sub2");
    path1.resolve(path2); //folder1sub1folder2sub2
    path1.resolveSibling(path2); //folder1folder2sub2
    path1.relativize(path2); //....folder2sub2
    path1.subpath(0, 1); //folder1
    path1.startsWith(path2); //false
    path1.endsWith(path2); //false
    Paths.get("folder1/./../folder2/my.text").normalize(); //folder2my.text
}

  转自:https://zhidao.baidu.com/question/646760893559036565.html

原文地址:https://www.cnblogs.com/jkguo/p/10953869.html