-1

我必须将 7 字节的整数值写入 DataOutputStream,这个整数包含 15 位数字。我怎样才能做到这一点?

4

2 回答 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 回答