遍历文件夹的两种方法

// 递归遍历文件价
public  void scanDir(File file) {
if (file == null) {
return;
} else {
File[] files = file.listFiles();
for (File f : files) {
if (f.isDirectory()) {
scanDir(f);
} else {
System.out.println(f.getName());
}
}
}
}


// my非递归遍历文件
public void scanDir2(File file) {
File[] files = file.listFiles();
LinkedList listFiles = new LinkedList();
for (File f : files) {
if (f.isDirectory()) {
listFiles.add(f);
} else {
System.out.println(f.getName());
}
}
File temp;
while (!listFiles.isEmpty()) {
temp = listFiles.removeFirst();
files = temp.listFiles();
if (files != null) {
for (File f : files) {
if (temp.isDirectory()) {
listFiles.add(f);
continue;
} else {
System.out.println(temp.getName());
}
}
}
}
}

你可能感兴趣的:(core,java)