目前我使用MessageConsole's
,MessageConsoleStream
写入控制台。
我的问题是,是否可以进行一些配置,以便将写入输出流的所有内容重定向到MessageConsoleStream
。
示例,如果我发出以下内容,它应该自动写入配置的控制台。
System.out.println("txt")
e.printStackTrace()
答案 0 :(得分:1)
您可以将所有out
和err
数据重定向,System.out.println("txt")
和e.printStackTrace()
打印到out
流,而#34;未经检查的例外情况&#34 ;打印到err
流。
在此示例中,System.out.println("txt")
会将txt
写入log.txt
文件。
OutputStream out = new FileOutputStream("log.txt");
PrintStream stream = new PrintStream(out);
System.setOut(stream);
System.setErr(stream);
在你的情况下,你可以这样做:
MessageConsoleStream out = ...;
PrintStream stream = new PrintStream(out);
System.setOut(stream);
System.setErr(stream);