Question

What is the smartest way to load a string like "10101011101010" directly into a new bit array? (not a byte array)

(The bits should remain in the same order as in the list.)

Was it helpful?

Solution

You can do it with LINQ:

var res = new BitArray(str.Select(c => c == '1').ToArray());

OTHER TIPS

You can use LINQ on this case like;

var yourbitarray = new BitArray(yourstring.Select(s => s == '1').ToArray());

How about something like this:

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

Might work...

or

byte[] bytes = bits.Select(c => (byte)c == '0' ? 0 : 1).ToArray();
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top