亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

UDP信息的接收?

基于UDP的通信,老師講的我是這么理解的:客戶端發送信息后,服務器端接收信息。通過recieve(packet)方法,把接收的信息存儲在服務器端的packet中,然后通過構造把packet中的信息轉到byte[]數組中,在把數組轉為字符串,得到發送過來的信息。不知道理解的對不對?那這樣的話,發送過來的信息太長,byte[]的長度不夠怎么辦?有所循環讀取的,我看了API也沒有想到循環讀取的方法。

正在回答

1 回答

我記得老師說過這么一句話:byte[]是數據報中用來存儲數據的。 所以我的理解是:通過receive(packet)方法,把接收的信息存在服務器端的packet中,實際上就是存在了packet中的byte[]中,然后通過String info = new String(data,0,packet.length)把packet中的byte[]轉化為了String類型。 至于你提問的byte[]長度不夠,我想你擔心的是用來接收數據的byte data = new byte[1024];太短吧,我以前也有過這種疑問。我查過很多資料,官方的說法不好理解,民間的說法是:byte[1024]就像緩存一樣去存儲接收到的信息,當byte[1024]裝滿的時候,會清空,再從剛才沒存放完的地方繼續存,依次類推,直到存放完所有接收到的數據。 這是我個人的理解,你參考看看

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

UDP信息的接收?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號