how2j.cn

步骤 1 : LogPrintStream   
步骤 2 : 使用办法   

LogPrintStream
package util; import java.io.OutputStream; import java.io.PrintStream; import java.text.SimpleDateFormat; import java.util.Date; public class LogPrintStream extends PrintStream{ public static boolean log = true; public void println() { println(""); } public void println(boolean x) { println(String.valueOf(x)); } public void println(char x) { println(String.valueOf(x)); } public void println(int x) { println(String.valueOf(x)); } public void println(long x) { println(String.valueOf(x)); } public void println(float x) { println(String.valueOf(x)); } public void println(double x) { println(String.valueOf(x)); } public void println(char[] x) { println(String.valueOf(x)); } public LogPrintStream(OutputStream out) { super(out); } public LogPrintStream() { this(System.out); } public static void closeLog(){ log= false; } public void println(Object x){ println(String.valueOf(x)); } public void println(String msg){ if(!log){ super.println(msg); return; } try { throw new Exception(); } catch (Exception e) { StackTraceElement[] stes = e.getStackTrace(); String time = new SimpleDateFormat("HH:mm:ss").format(new Date()); StackTraceElement s= getTriggerTraceElement(stes); String logFormat = "%s (%s:%d) %s() - %s%n"; super.printf(logFormat, time,s.getFileName(), s.getLineNumber(), s.getMethodName(), msg); } } private StackTraceElement getTriggerTraceElement(StackTraceElement[] stes) { for (StackTraceElement s : stes) { String clazzName = s.getClassName(); if(clazzName.equals(LogPrintStream.class.getName()) ){ continue; } return s; } return null; } public static void init() { System.setOut(new LogPrintStream()); } }
在代码最开始的地方加上这么一句
LogPrintStream.init();
LogPrintStream.init();


HOW2J公众号,关注后实时获知最新的教程和优惠活动,谢谢。


提问之前请登陆
提问已经提交成功,正在审核。 请于 我的提问 处查看提问记录,谢谢
关于 J2SE 应用-工作随记-LogPrintStream 的提问

尽量提供截图代码异常信息,有助于分析和解决问题。 也可进本站QQ群交流: 578362961
提问尽量提供完整的代码,环境描述,越是有利于问题的重现,您的问题越能更快得到解答。
对教程中代码有疑问,请提供是哪个步骤,哪一行有疑问,这样便于快速定位问题,提高问题得到解答的速度
在已经存在的几千个提问里,有相当大的比例,是因为使用了和站长不同版本的开发环境导致的,比如 jdk, eclpise, idea, mysql,tomcat 等等软件的版本不一致。
请使用和站长一样的版本,可以节约自己大量的学习时间。 站长把教学中用的软件版本整理了,都统一放在了这里, 方便大家下载: https://how2j.cn/k/helloworld/helloworld-version/1718.html

上传截图