gpt4 book ai didi

Java将堆栈跟踪发送到不同的输出流

转载 作者:搜寻专家 更新时间:2023-10-30 21:40:37 25 4
gpt4 key购买 nike

当我在我的 Java 应用程序中捕获异常时,我需要记录堆栈跟踪。我知道异常有一个内置的 printStackTrace() 方法,它可以将堆栈跟踪发送到不同的 PrintWriter/PrintStream,但如果我可以将堆栈跟踪作为字符串获取,这将很有用这样我就可以操纵它或在 JMessagePane 或其他东西中显示它。目前,我必须这样做的唯一方法是:

String stackTrace = "";
stackTrace += e.getClass().getName() + ": " + e.getMessage() + "\n";

for (StackTraceElement elt : e.getStackTrace()) {
stackTrace += "\tat " + elt + "\n";
}

有没有更简洁的方法来做到这一点?

最佳答案

有:

StringWriter writer = new StringWriter();
e.printStackTrace(new PrintWriter(writer));
String stackTrace = writer.toString();

关于Java将堆栈跟踪发送到不同的输出流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9404111/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com