如何将 byte[] 值转换为十进制?
How to convert byte[] values to decimal?
我使用的是 wireshark,我需要获取两个字节(附图)并将其设为十进制值:
我的目标是获取这个 byte[]
的十六进制值并将其解析为十进制。
当然,我知道如何将 一个 值转换为小数,这很容易,但我不知道如何计算这两个值,我应该在它们之间求和还是还有其他方法吗?
我没有找到任何与左值不相同的值 00
。
如果总是big endian(网络字节顺序),试试这个。
byte[] bytes = {0x00, 0x16};
System.out.println(ByteBuffer.wrap(bytes).getShort()); // => 22
如果字节数组长度为4,使用getInt()
代替getShort()
我使用的是 wireshark,我需要获取两个字节(附图)并将其设为十进制值:
我的目标是获取这个 byte[]
的十六进制值并将其解析为十进制。
当然,我知道如何将 一个 值转换为小数,这很容易,但我不知道如何计算这两个值,我应该在它们之间求和还是还有其他方法吗?
我没有找到任何与左值不相同的值 00
。
如果总是big endian(网络字节顺序),试试这个。
byte[] bytes = {0x00, 0x16};
System.out.println(ByteBuffer.wrap(bytes).getShort()); // => 22
如果字节数组长度为4,使用getInt()
代替getShort()