黑马程序员技术交流社区
标题:
Connection reset 报错怎么解决?
[打印本页]
作者:
赵江锋
时间:
2011-9-29 22:25
标题:
Connection reset 报错怎么解决?
用TCP写了一个客户端可以向服务器上传文件的程序,主要代码如下
………………………客户端
Socket s = new Socket("127.0.0.1",8888);
FileInputStream fis = new FileInputStream("c:\\dat1.txt");
OutputStream os = s.getOutputStream();
byte[] buf = new byte[1024];
int len;
while((len = fis.read(buf))!= -1){
os.write(buf,0,len);
}
s.shutdownOutput();
………………………服务器端
ServerSocket ss = new ServerSocket(8888);
Socket s = ss.accept();
System.out.println("a Client connect!");
InputStream in = s.getInputStream();
FileOutputStream fos = new FileOutputStream("d:\\dat2.txt");
byte[] buf = new byte[1024];
int len;
while((len = in.read(buf))!= -1){
fos.write(buf,0,len);
}
………………………
程序可以复制文件成功,但是报错
Exception in thread "main" java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java:168)
at java.net.SocketInputStream.read(SocketInputStream.java:90)
at io.Server.main(Server.java:26)
请问Connection reset错误怎么解决???
作者:
曾公亮
时间:
2011-9-29 23:36
我的那个聊天程序在关闭任何一端时都会出现这个问题;
把 try{
}
catch{
e.printStaceTrace();//把打印异常这句注释试下
}
这个异常好像是在流关闭时出现的错误,你可以设置在关闭流后不打印异常,关闭前还是打印的,用if语句控制
[
本帖最后由 曾公亮 于 2011-09-29 23:37 编辑
]
作者:
匿名
时间:
2011-9-30 11:52
把流关闭试试。不管怎么说流使用完要关闭的。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2