时间:2021-05-19
1. 使用Files.list()迭代目录及其子目录文件
Files.list()可以迭代目录及其子目录文件
Files.list(Paths.get(".")) //当前目录 .forEach(System.out::println);输出:
.\filename1.txt
.\directory1
.\filename2.txt
.\Employee.java
2. 使用 filter表达式过滤文件
过滤器函数引用,isRegularFile表示普通文件
Files.list(Paths.get(".")) .filter(Files::isRegularFile) //过滤器:只保留普通文件,过滤掉文件目录 .forEach(System.out::println);输出结果如下:
.\filename1.txt
.\filename2.txt
.\Employee.java
也可以使用lambda表达式进行过滤
Files.list(Paths.get(".")) .filter(s -> s.startsWith("file")) //过滤器:只保留以file开头的文件及目录 .forEach(System.out::println);3. 使用 Files.newDirectoryStream()迭代目录及其子目录文件
另一种更灵活的遍历目录的方式Files.newDirectoryStream(),如果我们的目录文件又深又多,DirectoryStream可以使迭代目录的速度更快。
Files.newDirectoryStream(Paths.get(".")) .forEach(System.out::println);输出结果与Files.list()效果一致
.\filename1.txt
.\directory1
.\filename2.txt
.\Employee.java
4. 使用Files.newDirectoryStream()迭代指定文件后缀名的文件
我们可以为Files.newDirectoryStream()传递第二个参数,指定过滤条件,比如以java(结尾)为后缀名的文件
Files.newDirectoryStream(Paths.get("."), path -> path.toString().endsWith(".java")) .forEach(System.out::println);Output:.\Employee.java5. 遍历目录内的隐藏文件
要查找所有隐藏文件,可以在过滤器中使用lambda表达式file -> file.isHidden()。或者,使用java8的方法引用。
final File[] files = new File(".").listFiles(file -> file.isHidden());//orfinal File[] files = new File(".").listFiles(File::isHidden);到此这篇关于使用java8API遍历过滤文件目录及子目录及隐藏文件示例详解的文章就介绍到这了,更多相关java8API遍历过滤文件目录及子目录及隐藏文件内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
java递归读取目录下的所有文件(包含子目录下的所有文件)大概思路如下:通过file.listFiles()方法获取目录下的所有文件(包含子目录下的所有文件),
小编今天没事写了目录想关的函数包括遍历该文件夹下的文件,目录子目录读取当前文件下目录和文件删除当前文件夹下的目录子目录以及文件以上三个函数目前还不支持中文文件中
本文实例讲述了php判断并删除空目录及空子目录的方法。分享给大家供大家参考。具体实现方法如下:步骤如下:1.遍历目录及子目录2.使用scandir判断目录是否为
本文实例为大家分享了android遍历所有文件夹和子目录来搜索文件,供大家参考,具体内容如下java代码:importjava.io.File;importan
在进行PHP编程时,需要对服务器某个目录下面的文件进行浏览,通常成为遍历目录。取得一个目录下的文件和子目录,就需要用到opendir()函数、readdir()