如何把e.printStackTrace()的信息保存下来?

newcomer1983 2005-03-31 08:18:37
我想把e.printStackTrace()的信息保存到日志中。
logger("错误信息:"+e.printStackTrace().toString());这样保存不下来,请问该如何保存?
...全文
447 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
kingfish 2005-03-31
  • 打赏
  • 举报
回复
因为trace是数组,它的toString会打印地址5cda3f,而不是内容

你可以对信息定义格式,如

String s="";
for (int i = 0; i < trace.length; ++i) {
s += trace[i].toString() + "\r\n";
}
logger(s);
newcomer1983 2005-03-31
  • 打赏
  • 举报
回复
to kingfish(八百里秦川@龙城异客)
我想知道为什么直接
logger(trace); 会是Ljava.lang.StackTraceElement;@5cda3f ,难道是应为有长度限制?
logger(trace[i]);可以,但是一条信息分很多次记录(每次有时间等),看起来很不方便。
Daem0n 2005-03-31
  • 打赏
  • 举报
回复
PrintWriter out=new PrintWriter(new FileWriter("file.txt",true));
e.printStackTrace(out);
out.close();
不知道楼主是不是这个意思~~
xcqksy 2005-03-31
  • 打赏
  • 举报
回复
关注
kingfish 2005-03-31
  • 打赏
  • 举报
回复
logger("错误信息:"+e);
StackTraceElement[] trace = e.getStackTrace();
for(int i=0;i<trace.length;++i){
logger(trace[i]);
}
jFresH_MaN 2005-03-31
  • 打赏
  • 举报
回复
logger(e.toString());

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧