Java IO - 将递归函数的输出从控制台打印到.txt文件



我有这段代码,我递归地列出文件夹中的所有文件。我的问题是如何将控制台的输出打印到.txt文件?如果有人可以在我的代码中添加所需的内容,这将对我有很大帮助。

import java.io.*;
public class Exp {
public static void main(String[] args) throws IOException {
File f = new File("C:\Users\User\Downloads");
rec(f);
}
public static void rec(File file) throws FileNotFoundException {
File[] list = file.listFiles();
for (File f : list) {
if (f.isFile()) {
System.out.println(f.getName());
}
else if (f.isDirectory()) {
rec(f);
}
}
}
}

您当前正在输出到System.out,这是一个PrintStream。而不是这样做,为.txt文件创建一个PrintStream,并将 PrintStream 作为参数传递给您的rec方法。使用"试用资源"习惯用法来确保在完成 PrintStream 后将其关闭。

最新更新