C#BitArray带有前导零

时间:2017-06-14 05:17:21

标签: c# bit bitarray

我尝试过这样的事情:

BitArray bits = new BitArray(00001110);

但结果是1110

似乎BitArray削减了前导零。

是否可以使用前导零创建BitArray?

1 个答案:

答案 0 :(得分:3)

BitArray bits = new BitArray(00001110);

只需将BitArray的大小设置为1110。你想要的是

bool[] array = new bool[] {false, false, false, false, true, true, true, false};
BitArray bits = new BitArray(array);

或使用

BitArray bits = new BitArray(new byte[] {0x70});

这是相当不直观的,因为第二位的位被放在第一位,每位的位按顺序颠倒。

此外,使用C#7.0,您也可以使用二进制文字设置字节值:

BitArray bits = new BitArray(new byte[] {0b0111_0000});