Java将Exception信息转为String字符串的方法

时间:2022-01-21 10:13:26

一、前言

在java中,异常机制是非常有用的构成部分,异常信息对于查找错误来说是必不可少至关重要的信息,因此我们希望在发生错误的时候先看到捕捉到底异常信息。然而,通常的异常信息的输出使用e.printstacktrace(),这样异常信息会被输出到控制台中。但有的时候我们需要异常中的部分信息,需要他是一个可以处理的string类型。

二、解决方法

1.使用log4j

当我们使用log4j日志来记录运行信息时,可以直接使用下述方式:

?
1
logger.error("异常信息:",e);

这样log日志中就会直接打印出异常堆栈内的全部信息,当然如果你使用的是

?
1
logger.error("异常信息:"+e.tostring());

这种形式,它只会输出异常的名称,而不会有详细信息。

2.使用stringwriter

这个方法可以将异常堆栈中的信息转换为string字符串

?
1
2
3
4
5
6
7
8
9
10
11
12
public string geterrorinfofromexception(exception e) {
  try {
   stringwriter sw = new stringwriter();
   printwriter pw = new printwriter(sw);
   e.printstacktrace(pw);
   return "\r\n" + sw.tostring() + "\r\n";
   sw.close();
   pw.close();
  } catch (exception e2) {
   return "errorinfofromexception";
  }
 }

这个方法可以将exception对象堆栈中的信息转换为string字符串返回,以供后续处理。

以上这篇java将exception信息转为string字符串的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/Roy_70/article/details/72723500