黑马程序员技术交流社区

标题: io流中的小问题 [打印本页]

作者: 张玉建    时间: 2013-7-28 22:40
标题: io流中的小问题
本帖最后由 杨兴庭 于 2013-7-30 22:33 编辑

BufferedWriter bufw = new BufferedWriter(new FileWriter(""));
PrintWriter pw = new PrintWriter(new FileWriter("729.txt"),true);
执行第一段代码时会在运行时抛出异常

求两个代码的运行时的区别在哪?

12.png (6.61 KB, 下载次数: 1)

出现运行时异常

出现运行时异常

作者: 李政    时间: 2013-7-29 00:03
从截图来看抛出的是SocketException 属于底层协议异常  异常描述是connection 有可能是客户端没有连接到服务器,这个异常并不是你写的两句话里面抛出的

这两句代码里面都会抛出IO异常,当文件无法创建或者文件时一个目录的时候抛出。两个对象都Writer的子类,也都有自己特有的方法,如BufferedWriter中的newLine()和PrintWriter中的print方法等等

作者: 张玉建    时间: 2013-7-29 03:18
当我在代码中把第一句代码注释掉,换成第二句代码,相关的方法变动!运行就一点问题都没有
第一句代码运行时就出异常,所以我认为是他出差错了,
SocketException 属于底层协议异常,那在运行第一代码时Socket服务没有建立?
求解释SocketException
作者: 李政    时间: 2013-7-29 08:41
本帖最后由 李政 于 2013-7-29 09:00 编辑

如果你现在写的是TCP协议的代码,可能是客户端与服务器在连接过程中异常终止连接造成的 connection reset 连接重置

连接是建立起来了,如果建立不起来抛的是SocketException 的子类 ConnectException 未连接异常

new FileWriter("") 这句话这样写也会抛IO异常中的FileNotFoundException




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2