Path通常代表文件系统中的位置。
调用Paths.get(String first,String … more)。第二个变量一般用不到,用来把额外的字符串合并起来形成Path字符串。
在/usr/bin目录下的文件压缩工具zip创建一个绝对Path
Paths.get(“usr/bin/zip”)
也可以用如下方式创建:
FileSystems.getDefault().getPath("/usr/bin/zip");
创建Path时可以使用相对路径。
Path.getFileName()//获取文件名
Path.getNameCount()//获取名称元素的数量
Path.getParent()//获取父目录
Path.getRoot()//获取根目录
. 表示当前目录;
.. 表示父目录。
举个例子:
比如在当前目录下有个test.java的文件,我们会这么写“./test.java”。
去掉冗余后就是test.java。
Paths.get("./test.java").normalize();
path.resolve("") 合并两个path
path.relativize(path) 取得两个path之间的路径
为了向后兼容,File中新增了toPath()方法,它可以把已有的File转化为新的Path。Path中也有个toFile()方法,将已有的Path转化为File。
Files.newDirectoryStream(Path directory,String patternMatch) // 声明过滤流
Files.walkFileTree(Path startingDir, FileVisitor<? super Path> visitor)
FileVisitor的方法很多,要使用这个接口,就要实现好多方法。所以有个默认实现类SimpleVisitor。
文件处理的基础类
Files 复制,移动,删除或处理文件的工具类
WatchService 用来监视文件或目录的核心类
Files.createFile(path)
Files.delete(path)
Files.copy(source,target,params) //params为复制文件属性(REPLACE_EXISTING)
Files.move(source,target,CopyOptions)