Да, конечно. Хорошо подмечено.

я есть массив из 128 логических значений, которые представляют биты. Как я могу преобразовать эти 128-битные представления в 16 байтов?

Пример:

У меня есть массив, который выглядит так:

0110001100110000100010111011001011010011010001010001101101001100
1000010000000000001000111111111101000011111001111011111011111001

(Преобразовано в 1 и 0, чтобы быть более кратким)

Мне нужно преобразовать эти биты в следующий байтовый массив:

99 48 139 178 211 69 27 76 132 0 35 255 67 231 190 249

РЕДАКТИРОВАТЬ: Это не похоже на работу:

public byte[] ToByteArray() {
    int numBytes = Count / 8;

    if (_bits.Count % 8 != 0) numBytes++;

    byte[] bytes = new byte[numBytes];

    int byteIndex = 0, bitIndex = 0;

    for (int i = 0; i < _bits.Count; i++) {
        if (_bits[i])
            bytes[byteIndex] |= (byte)(1 << bitIndex);

        bitIndex++;
        if (bitIndex == 8) {
            bitIndex = 0;
            byteIndex++;
        }
    }

    return bytes;
}

Это выводит:

198 12 209 77 203 162 216 50 33 0 196 255 194 231 125 159

Ответы на вопрос(5)

Ваш ответ на вопрос