让我们说我有一个JFrame并希望它显示在JTextArea中运行时抛出的每个异常,除了与帧本身相关的异常。 (显然,因为框架不会打开)。这可能吗?
答案 0 :(得分:0)
您可以使用StringWriter
收集堆栈跟踪的输出,并将结果作为String
附加到文本区域。像这样:
try {
...
} catch (Exception ex) {
StringWriter sw = new StringWriter();
ex.printStackTrace(new PrintWriter(sw));
textArea.append(sw.toString());
}
答案 1 :(得分:0)
不,这是不可能的。为了显示关于给定异常的任何信息,有必要捕获该异常。您可以安排捕获原本无法捕获的异常,并且可以安排捕获直接在您控制下的对象抛出的异常,但是没有对象可以捕获或处理首先被其他对象捕获的异常。
答案 2 :(得分:0)
您可以将System.out或System.err重定向到JTextArea。
有关一种方法,请参阅Message Console。