gpt4 book ai didi

java - Java 中详尽的嵌套目录搜索

转载 作者:行者123 更新时间:2023-11-29 03:11:53 25 4
gpt4 key购买 nike

我当时正在编写一个递归程序,该程序将采用路径作为输入。然后它会穷尽搜索它下面的所有文件和文件夹,无论文件和文件夹在什么深度。

我已经编写了下面给出的 java 程序:

void RecursiveFileSearch(File f, String d) {
int i;
String s[] = f.list();
for (i = 0; i < s.length; i++) {
File fs = new File(d + "/" + s[i]);
if (fs.isDirectory()) {
System.out.println("#DIRECTORY :"+s[i]);
d += "/" + s[i];
RecursiveFileSearch(fs, d);
} else {

System.out.println("@FILE : "+s[i]);
}

}
}

这个函数是从外部调用的:

String sourceDirectoryPath = "D:";
File sourceFile = new File(sourceDirectoryPath);
RecursiveFileSearch(sourceFile,sourceDirectoryPath);

但问题是只搜索源目录下的文件和文件夹。它不会深入。

我错过了什么吗?

最佳答案

为什么不直接使用 JDK 为您提供的 API?

对于 Java 8,它非常简单:

try (
final Stream<Path> stream = Files.walk(baseDir);
) {
stream.forEach(path -> System.out.printf("%s: %s\n",
(Files.isDirectory(path) ? "DIRECTORY": "FILE"), path));
}

关于java - Java 中详尽的嵌套目录搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28898423/

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