System.setOut(new PrintStream(new FileOutputStream("C:\\out.txt")));
System.out.println("hello world");

解决方案 »

  1.   

    try:
     
    ByteArrayOutputStream out = new ByteArrayOutputStream(); 
     System.setOut(new PrintStream(out));//重定向流  
      c.go();//调用控制台程序的go函数       
      out.flush();           
      out.close();
      //再调用out.toString方法获得
      

  2.   

    你们以上的方法是把输出流定义到其它流上面去,但我需要的是取得CONSOLE的输入流,方便我在另外的地方读取CONSOLE上面由程序其它部分打印上去的信息,而不是把CONSOLE信息定义到其它输出流。
      

  3.   

    用Log4j咯,到Apacher的网站去download吧,很好用的!
      

  4.   

    Log4j还不是一样,之不过定义了一个输出流,我的程序也都用LOG4J定义的输出文件的,但我是要在程序中回读CONSOLE的信息,当然可以去读输出文件,但效率可不怎么满意!有人有好办法吗?
      

  5.   

    相关论文已经找到:谢谢各位了
    http://blog.csdn.net/wohao2000/articles/98478.aspx
      

  6.   

    原文出处
    http://www-900.ibm.com/developerWorks/cn/java/l-console/index.shtml