java重定向输出实现日志功能

最近做了个很奇怪的功能,用System.out.println+重定向输出功能代替日志功能。
就算是实现个简易的日志功能吧。

//将输出日志打印到log.txt里面
File file = new File("./log.txt");
OutputStream os = new OutputStream (file,true);
PrintStream ps = new PrintStream(os);
System.setOut(ps); 

自此,本来在控制台输出的结果就会输出到log.txt里面,并且会一直添加内容。
如果要把输出重新到控制台标准输出呢?

final PrintStream oldStdout = System.out;
System.setOut(oldStdout);

此时,输出又转回到标准输出了。

你可能感兴趣的:(java,输入输出)