//重点分析:
第一步:先取第一层,然后第二层。。。第 n 层
第二步:递归实现,递规部分和停止部分
import java.io.*;
import java.util.*;
public class GetDirFilesUtil {
public static List<String> getDirFiles(File file){
List<String> resultList=new ArrayList<String>();
if(file.isDirectory()){
resultList.add(file.toString());
for(File inner:file.listFiles()){
resultList.addAll(getDirFiles(inner));//递归部分
}
}else{
resultList.add(file.toString());//停止部分
}
return resultList;
}
//测试类
public static void main(String[] args){
String inputPath=".";
File file=new File(inputPath);
List<String> resultList=new ArrayList<String>();
resultList=getDirFiles(file);
for(String fileString:resultList){
System.out.println(fileString);
}
}