控制台内容不输出有关问题

控制台内容不输出问题熟知,log4j可以打印log,一般也是这么用的,而且可以判断控制用不用打印,但是调用第三

控制台内容不输出问题
熟知,log4j可以打印log,一般也是这么用的,而且可以判断控制用不用打印,但是调用第三方jar的时候,就无力了。而我们更为熟知的System.out.prinln(e),也同样可以打出log,而且可控制控制台内容输出不输出,如下。

import java.io.File;import java.io.FileNotFoundException;import java.io.PrintStream;public class RedirectStdout {    public static void main(String[] args) {        try {            PrintStream ps = new PrintStream(new File("tmp.txt"));            PrintStream stdout = System.out;            System.setOut(ps);            System.out.println("Test string");            System.setOut(stdout);            ps.close();            System.out.println("Done.");        } catch (FileNotFoundException e) {            e.printStackTrace();        }    }}