Java:将位字符串转换为字节[]

时间:2018-12-28 19:02:33

标签: java arrays string bytebuffer

我想将一个位字符串写入一个字节数组,以便该字节数组从字面上包含该位字符串

我有一个值为“ 10000110”的字符串,我想将其转换为长度为5的字节数组。我希望得到的字节数组恰好存储此位字符串,所以对于i = 0,code_word_array [i]为0 ,1,2,3和“ 10000110”(i = 4)

axis

我用这段代码得到的是code_word_array [i]对于i = 0、1、2、4为0,对于i = 3为-122。为什么此值不存储在最后一个字节中?

1 个答案:

答案 0 :(得分:0)

您的代码中没有任何内容表明该值需要存储在最后一个字节中。由于ByteBuffer默认使用big endian,因此该值位于第4个字节中。

我只用一个字节[]

byte[] code_word_array = new byte[5];
code_word_array[4] = (byte) Integer.parseInt("10000110", 2);

code_word_array[4] = 0b10000110;