2009-11-27 42 views

回答

11

版本有System.setOut(),让你可以安装自己的PrintStream重排它。只需创建一个简单的OutputStream,它将通过write()追加的数据附加到PrintStream中,然后安装它。

+0

+1,打我吧 – 2009-11-27 16:43:47

+0

谢谢,就是这样:)。 – Pedro 2009-11-27 17:09:55

-1

我想你可能会使用某种形式的AspectJ来做到这一点,但我认为这可能是矫枉过正。我要做的是创建一个既能打印又能附加的方法。

public void printAndAppend(String text) { 
     System.out.println(text); 
     textArea.append(text); 
} 

然后,您可以只是做一个全局查找和替换System.out.printlnprintAndAppend

+0

,将工作做,但我不想碰这一切传统的东西.. – Pedro 2009-11-27 17:12:50

0

我不认为有一个简单的办法取代它。正因为这种原因,我通常会尽量避免在我的代码中调用System.out。如果你有这样的方法(比如说)MyUtil.myOutput()那么你可以做一个单一的变化,您要自1.5的Java

+0

是啊,这多用于处理一些遗留的东西,我在这里..当然,如果我会从零开始,我会使用log4j – Pedro 2009-11-27 17:11:28

1

那么您可以使用jTextArea.append("Your String")方法