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

时间:2018-09-06 17:07:33

标签: java recursion io

我有这段代码,在其中我递归列出了文件夹中的所有文件。我的问题是如何将控制台的输出打印到.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);
            }

        }
    }
}

1 个答案:

答案 0 :(得分:0)

您当前正在输出到System.out,即PrintStream。而不是这样做,而是为.txt文件创建PrintStream,然后将PrintStream作为参数传递给rec方法。使用 try-with-resources 习惯用法,确保在完成PrintStream后将其关闭。