Java遍历目录下的所有文件
一、递归算法
File file = new File(filePath);
if(file.isDirectory()){
File[] files = file.listFiles();
for (File file1 : files) {
if(file1.isDirectory()){
getChileFile(file1.getAbsolutePath());
}else{
System.out.println(file1.getAbsolutePath());
}
}
}else{
System.out.println(file.getAbsolutePath());
}
二、栈
int total = 0;
File file = new File(filePath);
List files = new ArrayList<>();
if(file.isDirectory()){
files.add(file);
}else{
total++;
System.out.println(file.getAbsolutePath());
}
while(!files.isEmpty()){
File[] fileArray = files.get(0).listFiles();
for (File file1 : fileArray) {
if(file1.isDirectory()){
files.add(file1);
}else{
total++;
System.out.println(file1.getAbsolutePath());
}
}
files.remove(0);
}
System.out.println(total);
Original: https://www.cnblogs.com/xiufengd/p/15994772.html
Author: 程序员丁先生
Title: Java遍历目录下的所有文件
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/562505/
转载文章受原作者版权保护。转载请注明原作者出处!