How can I convert a stack trace to a string?
Use Throwable.printStackTrace(PrintWriter pw)
to send the stack trace to an appropriate writer.
import java.io.StringWriter;import java.io.PrintWriter;// ...StringWriter sw = new StringWriter();PrintWriter pw = new PrintWriter(sw);e.printStackTrace(pw);String sStackTrace = sw.toString(); // stack trace as a stringSystem.out.println(sStackTrace);
One can use the following method to convert an Exception
stack trace to String
. This class is available in Apache commons-lang which is most common dependent library with many popular open sources
org.apache.commons.lang.exception.ExceptionUtils.getStackTrace(Throwable)
This should work:
StringWriter sw = new StringWriter();e.printStackTrace(new PrintWriter(sw));String exceptionAsString = sw.toString();