将System.out.println()输出重定向到Java中的文件

System类命名的文件代表标准输出Stream,它是PrintStream类的对象。

println()方法接受任何值(任何Java有效类型),将其打印并终止行。

默认情况下,控制台(屏幕)是Java中的标准输出Stream(System.in),每当我们将任何String值传递给System.out.prinln()方法时,它都会在控制台上打印给定的String。

重定向System.out.println()

java中System类的setOut()方法接受PrintStream类的对象,并将其作为新的标准输出流。

因此,要将System.out.println()输出重定向到文件-

  • 创建File类的对象。

  • 通过将上面创建的File对象作为参数传递来实例化PrintStream类。

  • 调用out()System类的方法,将PrintStream对象传递给它。

  • 最后,使用该println()方法打印数据,并将其重定向到第一步中创建的File对象表示的文件。

示例

import java.io.File;
import java.io.IOException;
import java.io.PrintStream;
public class SetOutExample {
   public static void main(String args[]) throws IOException {
      //实例化File类
      File file = new File("D:\\sample.txt");
      //实例化PrintStream类
      PrintStream stream = new PrintStream(file);
      System.out.println("From now on "+file.getAbsolutePath()+" will be your console");
      System.setOut(stream);
      //打印值到文件
      System.out.println("Hello, how are you");
      System.out.println("Welcome to Nhooo");
   }
}

输出结果

From now on D:\sample.txt will be your console