Skip to content

Latest commit

 

History

History
43 lines (34 loc) · 1.55 KB

File metadata and controls

43 lines (34 loc) · 1.55 KB

Java - StackTraceString的转换

原文: https://beginnersbook.com/2015/05/java-stacktrace-to-string-conversion/

有时我们想将发生的异常转换为String。在下面的程序中,我们使用Throwable.printStackTrace(PrintWriter pw)stacktrace转换为String

示例:将Exception StackTrace转换为String

package com.beginnersbook.string;
import java.io.PrintWriter;
import java.io.StringWriter;

public class StacktraceToString {
    public static void main(String args[]){
        try{
            int i =5/0;
            System.out.println(i);
        }catch(ArithmeticException e){
            /* This block of code would convert the
             * stacktrace to string by using
             * Throwable.printStackTrace(PrintWriter pw)
             * which sends the stacktrace to the writer
             * that we can convert to string using tostring()
             */
            StringWriter sw = new StringWriter();
            PrintWriter pw = new PrintWriter(sw);
            e.printStackTrace(pw);
            String stacktraceString = sw.toString();
            System.out.println("String is: "+stacktraceString);
        }
    }
}

输出:

String is: java.lang.ArithmeticException: / by zero
at com.beginnersbook.string.StacktraceToString.main(StacktraceToString.java:8)