我想寫一個以objectinputstream和objectoutputstream來傳送資料的聊天室
我找了一個範例,並修改成stream是傳送序列化後的data,程式碼如下:
server端:
http://ideone.com/Lfxo0I
client端:
http://ideone.com/GOduWD
序列化的data:
http://ideone.com/yjPLKk
但執行後,client端只要一打字傳送,就會出現這樣的錯誤訊息:
http://i.imgur.com/cYGMTLP.jpg
因為報錯的行數是在client端的readObject()及writeObject()
我以為是我弄錯stream傳送data的方式,所以我又寫了一個測試程式:
server端:
http://ideone.com/HVpZdP
client端:
http://ideone.com/F4mAnQ
序列化的data:
http://ideone.com/i65irs
但在這個範例卻可以正常的傳送資料而不會出錯:
http://i.imgur.com/L3XRkjL.jpg
objectoutputstream傳送的方式是將要送的資料包成一個序列化的類別並發送
再由objectinputstream來接收資料,我是這樣理解的
想請問為甚麼第一支程式會出錯,而第二支卻可以正常運作?
希望各位可以指點一下,謝謝