Java字节数组 - 如何操作下n位?

时间:2014-11-10 05:45:36

标签: java byte bit-manipulation bit

我正在研究操纵字节的算法,但不一定是可被8整除的值。代码在前32位中加上一个代表代码长度的数字。然后它遍历一个包含数字和字符集的集合。该数字放在接下来的n位中,由code_length表示,char放在下面的16位中。我怎样才能操作这些位?

byte[] result = new byte[numbits/8];
result[0]  = (byte) (code_length >> 24);
result[1] = (byte) (code_length >> 16);
result[2] = (byte) (code_length>> 8);
result[3] = (byte) (code_length);

while(iterator.hasNext())
{
   String next = iterator.next(); // The string is {code}:{char}, i.e. 4:c
   String values = next.split(":");
   int code = Interger.parseInt(values[0]);

   //Put code in the next code_length bits of result

   //Put values[1] in the next 16 bits of result

}

0 个答案:

没有答案