A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张玉建 中级黑马   /  2013-7-28 22:40  /  1378 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 杨兴庭 于 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)

出现运行时异常

出现运行时异常

评分

参与人数 1技术分 +1 收起 理由
杨兴庭 + 1

查看全部评分

3 个回复

倒序浏览
从截图来看抛出的是SocketException 属于底层协议异常  异常描述是connection 有可能是客户端没有连接到服务器,这个异常并不是你写的两句话里面抛出的

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

评分

参与人数 1技术分 +1 收起 理由
杨兴庭 + 1

查看全部评分

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

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

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

new FileWriter("") 这句话这样写也会抛IO异常中的FileNotFoundException
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马