Java syso输出是否可以被重定向

avatar
作者
筋斗云
阅读量:0

是的,Java中的System.out.println()输出可以被重定向。你可以使用System.setOut()方法将System.out重定向到一个文件或其他输出流。这里有一个简单的例子,演示如何将System.out重定向到一个文件:

import java.io.FileOutputStream; import java.io.PrintStream;  public class RedirectSystemOut {     public static void main(String[] args) {         try {             // 创建一个文件输出流             FileOutputStream fos = new FileOutputStream("output.txt");             // 创建一个新的PrintStream对象,将输出重定向到文件             PrintStream ps = new PrintStream(fos);             // 将System.out重定向到新的PrintStream对象             System.setOut(ps);              // 现在,所有的System.out.println()调用都会被写入到output.txt文件中             System.out.println("Hello, World!");              // 关闭文件输出流和PrintStream对象             ps.close();             fos.close();         } catch (Exception e) {             e.printStackTrace();         }     } } 

在这个例子中,我们首先创建了一个FileOutputStream对象,用于将输出写入到名为"output.txt"的文件。然后,我们创建了一个新的PrintStream对象,并将其与FileOutputStream关联。接下来,我们使用System.setOut()方法将System.out重定向到新的PrintStream对象。最后,我们关闭了文件输出流和PrintStream对象。

现在,当我们调用System.out.println()时,输出将被写入到"output.txt"文件中,而不是控制台。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!