dovresti scrivere una classe che estenda OutputStream e quindi usare setOut di System, passando la tua classe come argomento. Ovviamente ci sarà una JTextArea su cui farai l'append di quanto in arrivo al tuo write.
[EDIT]codice:import javax.swing.*; import java.io.*; /** * * @author Andrea */ public class JTextAreaOutRedirect extends JFrame { private OutputRedirect outr; private class OutputRedirect extends OutputStream { private JTextArea ta; public OutputRedirect(JTextArea ta) { this.ta = ta; } public void write (int cosa) throws IOException { ta.append(String.valueOf((char) cosa)); } } public JTextAreaOutRedirect() { super("Console Output Redirect Test"); this.setSize(400,400); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JTextArea ta = new JTextArea(); PrintStream ps = new PrintStream(new OutputRedirect(ta)); System.setErr(ps); System.setOut(ps); this.getContentPane().add(new JScrollPane(ta)); this.setVisible(true); } public static void main (String[] args) { new JTextAreaOutRedirect(); System.out.println("Dovrebbe finire nella JTextArea"); } }
![]()
Alex'87 rules
[/EDIT]