Java遍历目录下的所有文件

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/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球