1. 程式人生 > >java的異常(Exception)資訊的詳細記錄

java的異常(Exception)資訊的詳細記錄

下面的三個方法都是獲取異常的詳細資訊,或許的異常詳細資訊以字串的形式返回,保持棧堆載的風格

方法一:

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();   
    }