当程序运行异常时,e.printStackTrace()会打印出异常。但是很多时候我们希望将这些异常输出到日志中,以便日后可以随时查看到,可以通过这些异常快速的找到程序发生异常的代码。
那么有办法可以将异常的详细信息输出到文件吗?答案是肯定的。
程序:
public static String getTrace(Throwable t) { StringWriter stringWriter= new StringWriter(); PrintWriter writer= new PrintWriter(stringWriter); t.printStackTrace(writer); StringBuffer buffer= stringWriter.getBuffer(); return buffer.toString(); }
调用方法:
try(){ }catch(IoException e) e.printStackTrace(); logger.error(getTrace(e)); //将异常输出到文件 }
时间: 2024-10-15 05:01:53