public static List<File> getFiles(File file , Predicate<File> filter)获取指定目录下满足条件的文件
时间: 2023-05-25 08:02:36 浏览: 108
分享FindFile函数.txt
/**
* 获取指定目录下满足条件的文件
* @param file 目录
* @param filter 过滤条件
* @return 文件列表
*/
public static List<File> getFiles(File file, Predicate<File> filter) {
List<File> fileList = new ArrayList<>(); // 存储符合条件的文件
if (file.exists()) {
if (file.isDirectory()) {
// 如果是目录,遍历目录下所有文件,并判断是否符合过滤条件
File[] files = file.listFiles();
for (File f : files) {
if (f.isDirectory()) {
// 如果是目录,递归调用
fileList.addAll(getFiles(f, filter));
} else if (filter.test(f)) {
// 如果是文件且符合过滤条件,将该文件加入列表
fileList.add(f);
}
}
}
}
return fileList;
}
阅读全文