需求
给定一个路径,请通过递归完成该目录下的所有内容
思路
1、根据给定一个路径创建一个File对象
2、定义一个方法,用于获取给定目录下的所有内容
3、获取给定的File目录下所有文件或者目录下的所有File数组
4、遍历File数组,得到每个File对象
5、判断File对象是否为目录: 如果是,调用递归;如果不是,获取绝对路径输出在控制台
6、调用方法
代码
public static void main(String[] args) {
//根据给定一个路径创建一个File对象‘
File srcFile = new File("D:\\test");
//调用方法
getAllFilePath(srcFile);
}
//定义一个方法,用于获取给定目录下的所有内容
public static void getAllFilePath(File srcFile) {
//获取给定的File目录下所有文件或者目录下的所有File数组
File[] fileArray = srcFile.listFiles();
//遍历File数组,得到每个File对象
if (fileArray != null) {//提高程序的健壮性
for (File file : fileArray){
//判断File对象是否为目录
if(file.isDirectory()){
//如果是,调用递归
getAllFilePath(file);
}else {
//获取绝对路径输出在控制台
System.out.println(file.getAbsoluteFile());
}
}
}
}