1.java列出文件夹下的所有文件

FileUtils工具类:

 public static List<File> listAllFile(File file, List<File> fileList) {
        File[] files = file.listFiles();
        if (!Objects.isNull(files) && files.length > 0) {
            for (File f : files) {
                if (f.isDirectory()) {
                    listAllFile(f, fileList);
                } else if (f.isFile()) {
                    fileList.add(f);
                }
            }
        }
        return fileList;
    }

使用(c盘test文件夹下所有文件):

File file = new File("c:/test");
List<File> allFileList = new ArrayList<>();
listAllFile(file, allFileList);
allFileList保存递归出来的所有文件。

2.递归删除文件夹

 public static void deleteFile(File file) {
        if (file.exists()) {
            if (file.isFile()) {
                file.delete();
            } else if (file.isDirectory()) {
                File[] files = file.listFiles();
                if (!Objects.isNull(file) && files.length > 0) {
                    for (File f : files) {
                        deleteFile(f);
                    }
                }
                file.delete();
            }
        }
    }

 

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐