黑马程序员技术交流社区
标题:
关于IO流的关闭问题。
[打印本页]
作者:
阿阿阿阿兵
时间:
2017-5-25 11:40
标题:
关于IO流的关闭问题。
大神看过来!TCP传输中的服务端和客户端分别都有三个流,为啥最后都只关闭一个流
public class UploadServer {
public static void main(String[] args) throws Exception {
System.out.println("上传服务端。。。。");
//1
ServerSocket ss = new ServerSocket(10088);
//2
Socket s = ss.accept();
System.out.println(s.getInetAddress().getHostAddress()+"...connected");
//3
BufferedReader bufIn = new BufferedReader(new InputStreamReader(s.getInputStream()));
//4
BufferedWriter bufw = new BufferedWriter(new FileWriter("C:/123.txt"));
String line = null;
while((line = bufIn.readLine())!= null){
bufw.write(line);
bufw.newLine();
bufw.flush();
}
PrintWriter out = new PrintWriter(s.getOutputStream(),true);
out.println("上传成功");
bufw.close();
s.close();
ss.close();
}
}
public class UploadClient {
public static void main(String[] args) throws Exception {
System.out.println("上传客户端。。。。");
File file = new File("D:/123.txt");
System.out.println(file.exists());
//1
Socket s = new Socket("localhost",10088);
//2
BufferedReader bufr = new BufferedReader(new FileReader(file));
//3
PrintWriter out = new PrintWriter(s.getOutputStream(),true);
String line = null;
while((line = bufr.readLine()) != null){
out.println(line);
}
//告诉服务端,客户端写完了
s.shutdownOutput();
//4
BufferedReader bufIn = new BufferedReader(new InputStreamReader(s.getInputStream()));
String str = bufIn.readLine();
System.out.println(str);
bufr.close();
s.close();
}
}
作者:
阿阿阿阿兵
时间:
2017-5-25 11:45
大神们帮看看啊
作者:
阿阿阿阿兵
时间:
2017-5-25 11:55
自己顶一下
作者:
烽火狼烟
时间:
2017-5-25 23:55
因为另外两个流是最便捷的实现
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2