获取异常信息e.printStackTrace()的内容

获取异常信息e.printStackTrace()的内容

最近做项目的时候需要记录操作的日志,但是记录异常信息的是发现使用e.getMessage()根本无法满足需要,并且e.getMessage()有时获得的信息根本无法知道具体的错误信息,那么这个时候我们就要获得e.printStackTrace()的内容了

获得异常错误信息

package com.gavin.exception.demo;

import java.io.PrintWriter;
import java.io.StringWriter;
import java.io.Writer;

public class Test {

    public static void main(String[] args) {
        try {
            method();
        } catch (Exception e) {
            // TODO Auto-generated catch block
            Writer writer = new StringWriter();
            e.printStackTrace(new PrintWriter(writer));  
            System.out.println("打印错误:"+writer.toString());  
            
            e.printStackTrace();
        }
    }
    
    public static void method() throws Exception{
        throw new Exception("出错了");
    }
}

输出结果:
打印错误:java.lang.Exception: 出错了
    at com.demo.Test.method(Test.java:23)
    at com.demo.Test.main(Test.java:11)

java.lang.Exception: 出错了
    at com.demo.Test.method(Test.java:23)
    at com.demo.Test.main(Test.java:11)

原文地址:https://www.cnblogs.com/gavinYang/p/3818701.html