該實例完成的功能如下:
一次啟動Server端和Client端后,首先由Server端發‘1’給Client端,Client端將接收到的數據加1后,發該數據給Server端,Server端再將數據加1后發給Client端,依次類推。直到Server端收到數據20,Client收到19時,兩方中斷收發。
程序代碼如下:
if(Integer.parseInt(sendStr) >= 20) { flag = false; }
來使程序跳出循環,程序報出了如下錯誤:java.net.SocketException: Connection reset。。。。。。
引起該問題的原因是由于此時Server端連接已經被復位,而Client依然通過該連接在接收和發送數據,在網上搜索了一下該錯誤,發現該錯誤引起的原因大都是防火墻的原因,嘿嘿,又學了一招。
過幾天繼續研究Socket通信編程,寫了好的實用的例子繼續帖上來 :)