Java递归实现获取指定目录下所有文件

public class FileDemo {
    public static void main(String[] args) throws IOException {
        File file=new File("D:\\huangjunjie");//给定目录
        getAllFilePath(file);//调用方法
    }
    public static void getAllFilePath(File srcFile){
        File[] files=srcFile.listFiles();//获取当前目录下所有文件或者目录的File数组
        if (files!=null){//对象存在就执行命令
            for (File file:files){
                if(file.isDirectory()){//判断是否是目录,是就递归调用
                    getAllFilePath(file);
                }else {//不是就说明是最后的文件,输出它的绝对路径
                    System.out.println(file.getAbsolutePath());
                }
            }
        }
    }
}

Java递归实现获取指定目录下所有文件_第1张图片

 注意只会输出最后的文件的绝对路径,不会把中间的文件夹的也打印出来

Java递归实现获取指定目录下所有文件_第2张图片

 

你可能感兴趣的:(递归,java,jvm,开发语言)