【发布时间】:2017-05-29 08:38:15
【问题描述】:
在向设备发送请求时,我遇到了 LSB 和 MSB 问题。我需要发送 sessionId(int)。它需要以四个字节发送。现在我正在发送这样的字节数组:
所以,例如,如果 sessionID 是 14 我正在发送:
public static final byte[] intToByteArray(int value) {
return new byte[] {
(byte)(value >>> 24),
(byte)(value >>> 16),
(byte)(value >>> 8),
(byte)value};
}
byteData[36] - 0
byteData[37] - 0
byteData[38] - 0
byteData[39] - 14
问题是 - 我需要将 byteData[36] 设置为 LSB,将 byteData[39] 设置为 MSB。你能帮我解决这个问题吗?在此先感谢:)
【问题讨论】:
-
看看this的回答。
-
有了这个解决方案 byteData[39] 仍然是 14。我需要值 14 在 byteData[36]
-
只需使用
ByteOrder.LITTLE_ENDIAN而不是ByteOrder.BIG_ENDIAN顺序。
标签: android arrays byte endianness