8

将像“10101011101010”这样的字符串直接加载到新的位数组中的最聪明的方法是什么?(不是字节数组

(位应保持与列表中相同的顺序。)

4

3 回答 3

11

你可以用 LINQ 做到这一点:

var res = new BitArray(str.Select(c => c == '1').ToArray());
于 2012-12-19T11:12:34.123 回答
3

您可以LINQ在这种情况下使用,例如;

var yourbitarray = new BitArray(yourstring.Select(s => s == '1').ToArray());
于 2012-12-19T11:15:20.813 回答
0

像这样的东西怎么样:

string bits = "101010101010";
byte[] bytes = bits.ToCharArray().Select(c => (byte)c == '0' ? 0 : 1).ToArray();

可能工作...

或者

byte[] bytes = bits.Select(c => (byte)c == '0' ? 0 : 1).ToArray();
于 2012-12-19T11:13:17.710 回答