在字符串中获取java throwable的消息

时间:2013-12-08 21:15:12

标签: java exception-handling

我正在尝试创建一个错误处理程序,它将收到一条错误消息并将其打印到日志记录文件中。如果我使用这样的试试/捕获,有没有办法可以得到按摩?

try{
    //code;
}catch(Exception e){
   Main.error=e.?;
}

我已经尝试过e.getMessage()但它只返回null。提前致谢

3 个答案:

答案 0 :(得分:5)

来自Throwable类的docs(其中getMessage()来自):

  

返回:       此Throwable实例的详细消息字符串(可能为null )。

因此,null消息是来自getMessage()的完全合法的响应,并且只要在没有参数的情况下实例化Exception类就会创建。

如果通过消息表示堆栈跟踪,那么Throwable定义了一个getStackTrace方法,它允许您遍历将在{{1}中打印的各种元素。您可以使用printStackTrace

从中获取字符串输出

答案 1 :(得分:0)

您是否尝试使用e.toString()

答案 2 :(得分:0)

你可以这样做:

try{
//code;
}catch(Exception e){
      PrintWriter writer = new PrintWriter("the-file-name.txt", "UTF-8");
      writer.println(e.toString());
      writer.close();
}