看板 AndroidDev 關於我們 聯絡資訊
※ 引述《acespeed (xXx)》之銘言: : 請問一下各位版友 : 最近在做收data的程式 : 而收到的data都是用byte存起來 : 可是如果我拿來用都會有單位轉換的問題 : 如我宣告 : int a ; : 去收收到的data : a = dataa<<8 + datab; : 這樣收到的結果都是錯的 : 而我處理64bits的時候問題更大 : 請問大家有推薦的書或網站在講怎麼處理這個的嗎 : 以前寫c都直接轉來轉去都不會有問題 : 不太清楚這部分應該怎麼處理 : 謝謝 ByteBuffer buffer = ByteBuffer.wrap(data); int a = buffer.getInt(); short b = buffer.getShort(); 不過不確定你的data是big endian還是little endian 如果上面結果還是錯的 可以試試 buffer.order(ByteOrder.LITTLE_ENDIAN); 再去讀去你的data 另外如果你是讀取的是一個stream 建議改用DataInputStream -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.137.88.149
acespeed:好~我會試試看!謝謝你 08/09 10:25