課程
/后端開發(fā)
/Java
/Java Socket應用---通信是這樣練成的
有沒有報SocketException connection reset錯誤的同學?
2017-10-04
源自:Java Socket應用---通信是這樣練成的 3-4
正在回答
不要關閉輸入流,去掉客戶端的s.shutdownInput試一試
反正所有的解決辦法都是報錯,好像只能繞過,避免問題出現(xiàn)
小可愛也是報錯了么?我現(xiàn)在才接觸,準備入手?
服務器端: package?zx_Socket; import?java.io.BufferedReader; import?java.io.IOException; import?java.io.InputStream; import?java.io.InputStreamReader; import?java.io.OutputStream; import?java.io.PrintWriter; import?java.net.ServerSocket; import?java.net.Socket; /** ?*? ?*?@author?yingmanji ?*?@修改日期: ?*?@描述:模擬慕課視頻中的服務端 ?* ?*/ public?class?TcpServer3?{ public?static?void?main(String[]?args)?{ try?{ ServerSocket?ss=new?ServerSocket(8888); System.out.println("服務器已開啟,等待連接"); Socket?s=ss.accept(); InputStream?is=s.getInputStream(); InputStreamReader?isr=new?InputStreamReader(is); BufferedReader?br=new?BufferedReader(isr); String?info=null; while((info=br.readLine())!=null)?{ System.out.println("我是服務端,客戶端說:"+info); } s.shutdownInput(); OutputStream?out=s.getOutputStream(); PrintWriter?pw=new?PrintWriter(out); pw.write("歡迎您"); pw.flush(); s.shutdownOutput(); //關閉資源 pw.close(); out.close(); br.close(); isr.close(); is.close(); s.close(); ss.close(); }?catch?(IOException?e)?{ //?TODO?Auto-generated?catch?block e.printStackTrace(); } } } 客戶端: package?zx_Socket; import?java.io.BufferedReader; import?java.io.IOException; import?java.io.InputStream; import?java.io.InputStreamReader; import?java.io.OutputStream; import?java.io.PrintWriter; import?java.net.Socket; import?java.net.UnknownHostException; public?class?TcpClient3?{ public?static?void?main(String[]?args)?{ try?{ Socket?s=new?Socket("localhost",8888); OutputStream?out=s.getOutputStream(); PrintWriter?pw=new?PrintWriter(out); pw.println("hello,我是admin"); pw.flush(); s.shutdownOutput(); InputStream?is=s.getInputStream(); InputStreamReader?isr=new?InputStreamReader(is); BufferedReader?br=new?BufferedReader(new?InputStreamReader(is)); String?info=null; while((info=br.readLine())!=null)?{ System.out.println(info); } s.shutdownInput(); br.close(); isr.close(); is.close(); pw.close(); out.close(); s.close(); }?catch?(UnknownHostException?e)?{ //?TODO?Auto-generated?catch?block e.printStackTrace(); }?catch?(IOException?e)?{ //?TODO?Auto-generated?catch?block e.printStackTrace(); } } }
慕粉1344475936 提問者
舉報
分享的是 Java 中的網(wǎng)絡編程,使用Socket實現(xiàn)網(wǎng)絡聊天通信
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學習伙伴
掃描二維碼關注慕課網(wǎng)微信公眾號
2018-03-31
不要關閉輸入流,去掉客戶端的s.shutdownInput試一試
2017-11-09
反正所有的解決辦法都是報錯,好像只能繞過,避免問題出現(xiàn)
2017-10-15
小可愛也是報錯了么?我現(xiàn)在才接觸,準備入手?
2017-10-04