1. 程式人生 > >打印錯誤棧信息:可以捕獲具體錯誤信息

打印錯誤棧信息:可以捕獲具體錯誤信息

ack print return output nbsp rac put end true

第一種方式:

public String getStackTraceStr(Exception e) {
ByteArrayOutputStream buf = new java.io.ByteArrayOutputStream();

e.printStackTrace(new PrintWriter(buf, true));
String exStr = buf.toString();
try {
buf.close();
} catch (IOException e1) {
e1.printStackTrace();
}
return exStr;
}

第一種方式用到了流,太占用內存資源。

第二種方式:

private static String getStackMsg(Exception e) {

StringBuffer sb = new StringBuffer();
StackTraceElement[] stackArray = e.getStackTrace();
for (int i = 0; i < stackArray.length; i++) {
StackTraceElement element = stackArray[i];
sb.append(element.toString() + "\n");
}
return sb.toString();
}

打印錯誤棧信息:可以捕獲具體錯誤信息