2016-05-09 8 views
1

現在、私はMessageConsole'sMessageConsoleStreamを使用してコンソールに書き込みます。すべての出力をMessageConsoleに転送


私の質問は、それが出力ストリームに私が書くすべてがMessageConsoleStreamにリダイレクトされるように、いくつかの設定を行うことは可能です。


私が以下を発行すると、設定されたコンソールに自動的に書き込まれるはずです。場合未確認の例外で

  1. System.out.println("txt")
  2. e.printStackTrace()
  3. (自動的にコンソールに行く必要があります)が発生します。

答えて

1

はすべてouterrデータ、「未チェックexcepctionsは」errストリームに印刷されながらSystem.out.println("txt")e.printStackTrace()outストリームに印刷されてリダイレクトすることができます。
この例では、System.out.println("txt")はをlog.txtファイルに書き込みます。

MessageConsoleStream out = ...; 
PrintStream stream = new PrintStream(out); 
System.setOut(stream); 
System.setErr(stream); 
:あなたはこのような何かを行うことができ、あなたの場合は

OutputStream out = new FileOutputStream("log.txt"); 
PrintStream stream = new PrintStream(out); 
System.setOut(stream); 
System.setErr(stream);