JavaSE学习——F工具类

张开发
2026/4/11 8:55:56 15 分钟阅读

分享文章

JavaSE学习——F工具类
之前我们学习File类需要先File file new File(文件名/目录名) 现在java有一个专门的工具类Files。下面是快速进行一个文件的创建Files.createDirectories(Path.of(test));注意需要引入头文件import java.nio.file.Files; import java.nio.file.Path;以及在主函数的方法里引入可能发生的异常throws IOException也可以创建一个Path对象并进行一些方法的调用。下面是查看路径的父目录相对路径不行绝对路径可以Path test Path.of(test); System.out.println(test.getParent());下面是可以查看绝对路径的方法Path test Path.of(test); System.out.println(test.toAbsolutePath());删除文件:-Files.delete(Path.of(test));不存在这个文件就会报错所以可以使用Files.deleteIfExists(Path.of(test)); //返回true或者没有文件就返回false对于文件的快捷操作很方便不需要像之前一样写输入输出流了①读取所有内容并以字符串返回Path path Path.of(hxl.txt); String s Files.readString(path);// 读取文件 System.out.println(s); //Java 11新增读取所有内容并以字符串返回②读取所有文件内容并按行分割返回ListString lines Files.readAllLines(path); //一键读取所有文件内容并按行分割返回 System.out.println(lines);③下面的也是读取文件的内容并作为Stream流返回。StreamString linesStream Files.lines(path);④快速写入下面的代码是将“HelloWorld”放入path路径下的文件。(第二个的效果是覆盖)Files.write(path, HelloWorld.getBytes()); //一键写入内容 Files.write(path, HelloWorld.getBytes(), StandardOpenOption.APPEND);⑤Java 11新增更快捷的用字符串一键写入Files.writeString(path, HelloWorld);⑥拷贝文件到另一个路径就很方便Files.copy(path, Path.of(another)); //拷贝文件到另一个路径⑦移动文件到另一个路径Files.move(path, Path.of(another));⑧还有一些零碎的// 文件状态判断 Files.exists(path); //判断文件是否存在 Files.notExists(path); //判断文件是否不存在 Files.isExecutable(path); //文件是否可执行 Files.isDirectory(path); //文件是否是文件夹 Files.isWritable(path); //文件是否可写 Files.isReadable(path); //文件是否可读 Files.isHidden(path); //文件是否为隐藏文件// 流创建 Files.newInputStream(path); //创建新的文件输入流 Files.newOutputStream(path); //创建新的文件输出流快速查找文件// 其中第一个参数为起始查找点第二参数为最大查找深度最后就是一个断言函数式就是判断每一个文件是否符合我们要查找的要求 Files.find(Path.of(.), 4, (path, attributes) - { if (path.getFileName().toString().equals(Main.java)) { return true; } else { return false; } }).forEach(path - { //find的结果会以Stream的形式返回 System.out.println(path); });walk方法遍历每一个文件的Path对象Files.walk(Path.of(.)) //返回StreamPath .filter(Files::isRegularFile) //filter过滤判断是否为普通文件 .forEach(System.out::println); //打印

更多文章