java的异常(Exception)信息的详细记录

来源:互联网 发布:floyd算法matlab代码 编辑:程序博客网 时间:2024/05/13 02:29

下面的三个方法都是获取异常的详细信息,或许的异常详细信息以字符串的形式返回,保持栈堆载的风格

 

方法一:

public static String getExceptionAllinformation(Exception ex){
        String sOut = "";
        StackTraceElement[] trace = ex.getStackTrace();
        for (StackTraceElement s : trace) {
            sOut += "\tat " + s + "\r\n";
        }
        return sOut;
 }

方法二:

 public static String getExceptionAllinformation_01(Exception ex) {
         ByteArrayOutputStream out = new ByteArrayOutputStream();
         PrintStream pout = new PrintStream(out);
         ex.printStackTrace(pout);
         String ret = new String(out.toByteArray());
         pout.close();
         try {
              out.close();
         } catch (Exception e) {
         }
         return ret;
 }

方法三:

    private static String toString_02(Throwable e){   
            StringWriter sw = new StringWriter();   
            PrintWriter pw = new PrintWriter(sw, true);   
            e.printStackTrace(pw);   
            pw.flush();   
            sw.flush();   
            return sw.toString();   
    } 

原创粉丝点击