我必须将 7 字节的整数值写入 DataOutputStream,这个整数包含 15 位数字。我怎样才能做到这一点?
问问题
1305 次
2 回答
1
7 个字节 = 56 位
,这意味着您最多可以表示 2^56 的数字,这对于 15 位长数字来说是不必要的。
只需将数字转换为二进制并将其存储在您发送的那 7 个字节中。
于 2011-11-03T00:09:49.900 回答
0
7 bytes = 56 bits,可以用long存储15位整数
并将其转换为字节:
long val = ...
byte [] b = new byte[7];
for(int i=0;i<7;i++){
b[7 - i] = (byte)(val >>> (i * 8));
}
/手写,可能会弄乱索引或班次/
于 2011-11-03T00:17:29.423 回答