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 に答える