gpt4 book ai didi

Java:如何仅获取特定级别中存在的子目录名称?

转载 作者:行者123 更新时间:2023-12-01 07:02:10 25 4
gpt4 key购买 nike

这是我的文件夹结构:

parent/
child1/
child1.1/
child1.2/
child2/
child 2.1/
child 2.2/
child3/
child 3.1/
child 3.2/

如何只提取第三级文件夹的名称? (网上没找到)

输出应该是:

child1.1 ,child1.2 
child2.1 ,child2.2
child3.1 ,child3.2

我引用了Java: how to get all subdirs recursively?查找子目录。

最佳答案

要使level参数化,我建议使用以下代码:

static public List<File> getDirs(File parent, int level){
List<File> dirs = new ArrayList<File>();
File[] files = parent.listFiles();
if (files == null) return dirs; // empty dir
for (File f : files){
if (f.isDirectory()) {
if (level == 0) dirs.add(f);
else if (level > 0) dirs.addAll(getDirs(f,level-1));
}
}
return dirs;
}

并称其为:

List<File> l = getDirs(new File("/some/path"), 3);

编辑:我添加了针对空目录的验证

关于Java:如何仅获取特定级别中存在的子目录名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41344236/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com