gpt4 book ai didi

java - 如何将异常的 StackTrace 追加到 java 文件中?

转载 作者:行者123 更新时间:2023-12-03 20:25:18 25 4
gpt4 key购买 nike

在java中,当我们捕获异常时,通常可以使用printStackTrace()方法打印错误信息,也可以使用printStackTrace(PrintStream out)将这些信息定向到一个文件。

但是我怎样才能将这些信息附加到现有文件中,就像使用 out.append() 一样?

最佳答案

您必须以追加模式打开文件:

try {
//...
} catch (Exception e) {
try(Writer w = new FileWriter("file.log", true)) {
e.printStackTrace(new PrintWriter(new BufferedWriter(w)));
}
}

如果您不使用 Java 7,则必须记住关闭或至少刷新 Writer。或者你可以有一个全局的 Writer,但是你必须在线程之间同步它。

如何简单地使用一些现有的 Java 库,如 , 甚至 java.util.logging?简单地说:

} catch (Exception e) {
log.error("Opps!", e);
}

...并且框架会在任何你想要的地方记录异常,还有很多额外的数据,比如线程名称、时间戳、额外的消息等。Logback 还可以告诉你给定的堆栈帧来自哪个库,甚至打印从根本原因(大多数嵌套异常)开始的堆栈跟踪。

关于java - 如何将异常的 StackTrace 追加到 java 文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13777336/

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