Exception 异常信息处理
2023-12-13 12:24:44
Exception 异常信息处理
在捕获异常的时候,大部分情况都要用到这样的一条语句:e.printStackTrace();
try{
.....
}catch(Exception e){
//e是Throwable的实例异常对象,一旦try捕获到了异常,系统会自动将catch括号中的Exception e 初始化。
e.printStackTrace() ;
}
//printStackTrace()是异常类的一个方法。与它重载的方法还有
//printStackTrace(PrintStream s)
//printStackTrace(PrintWriter s) 将错误信息记录在文件中
//而在Throwable类中printStackTrace()内部是这样执行的:
//调用printStackTrace(PrintStream s)方法。err是System类当中的一个静态PrintStream类型字段。所以它能传递进去。
public void printStackTrace() {
printStackTrace(System.err);
}
错误写法
如果为了图省事儿,这样写:e.printStackTrace( new PrintWriter( new File( “G:/excep.txt” )));
那么可能在文件G:/excep.txt中得不到任何异常信息,这是因为PrintWriter提供了一个缓冲区,而此时你写进去的信息没有将缓冲区填满,那么它就不会输出。
try {
throw new Exception("for no season");
} catch (Exception e) {
PrintWriter pw = new PrintWriter(new File("G:/excep.txt"));
e.printStackTrace(pw);
pw.flush();
pw.close();
}
标准写法:
文章来源:https://blog.csdn.net/m0_51429482/article/details/134949780
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!