Java:如何递归获取所有子目录?

bluesky5月前 ⋅ 93 阅读

ChatGPT的回答仅作参考:

可以使用递归函数来获取所有子目录,具体实现如下:

```java
import java.io.File;

public class RecursiveSubdirectories {
    public static void main(String[] args) {
        File root = new File("C:\\Users\\username\\Documents\\");
        listSubdirectories(root);
    }

    public static void listSubdirectories(File dir) {
        File[] files = dir.listFiles();
        if (files != null) {
            for (File file : files) {
                if (file.isDirectory()) {
                    System.out.println("Directory: " + file.getAbsolutePath());
                    listSubdirectories(file);
                }
            }
        }
    }
}
```

在上面的代码中,我们首先定义了一个根目录 `root`,然后调用 `listSubdirectories` 函数来获取所有子目录。在 `listSubdirectories` 函数中,我们首先获取当前目录下的所有文件和子目录,然后遍历这些文件和子目录,如果是子目录则输出其路径并递归调用 `listSubdirectories` 函数来获取其子目录。

全部评论: 0

    相关推荐