Java 程序将堆栈轨迹转换为 String
Java.io.StringWriter 类是一个字符流,它将它的输出收集到一个字符串缓冲区中,该字符串缓冲区可用于构建一个字符串。关闭 StringWriter 不会产生任何影响。
Java.io.PrintWriter 类以格式化表示形式将对象打印到文本输出流中。
使用这两个类可以将堆栈轨迹转换为 String。
示例
import java.io.PrintWriter; import java.io.StringWriter; public class StackTraceToString { public static void main(String args[]) { try { int a[] = new int[2]; System.out.println("Access element three :" + a[3]); } catch (ArrayIndexOutOfBoundsException e) { StringWriter writer = new StringWriter(); e.printStackTrace(new PrintWriter(writer)); String myString = writer.toString(); System.out.println("Stack trace message ::"+myString); } } }
输出
Stack trace message ::java.lang.ArrayIndexOutOfBoundsException: 3 at lastRound.StackTraceToString.main(StackTraceToString.java:10)
广告