c # преобразовать строку из единиц и нулей в последовательность битов

В настоящее время я занимаюсь сжатием изображений по модели Хаффмана. На данный момент я добился сжатия и распаковки, но возникла следующая проблема: я использую текстовый файл для хранения единиц и нулей. Однако на самом деле это не сжатие, так как мне нужно хранить единицы и нули как биты, а не символы ascii. Итак, вопрос в том, как преобразовать строку из 1 и 0 в последовательность битов? Внимание: каждые 1 и 0 - это простой бит. Пример: «10» на 10 в битах.

P.S. Я использую язык C #.


person Dave    schedule 15.05.2015    source источник
comment
Что точно вы имеете в виду под 10 битами? Было бы действительно полезно, если бы вы дали конкретный код с вводом и ожидаемым выводом, включая типы вывода. (Вы хотите получить результат byte[], где каждые 8 ​​символов составляют, например, один byte?) Вам действительно нужно вообще хранить текст? (Я предполагаю, что ваше представление о символах ascii не совсем мое ...)   -  person Jon Skeet    schedule 15.05.2015
comment
Я почти уверен, что из контекста он имеет в виду, что 10101010 должен быть байтом с битами 10101010 (хотя не определено, каким должно быть поведение, если длина строки не кратна 8). Опять же из контекста, байт [] кажется подходящим.   -  person Eric J.    schedule 15.05.2015
comment
Так что некуда спрашивать, можете ли вы предоставить мне код для решения моей проблемы? вопросы, так что голосование закрывается.   -  person David Arno    schedule 15.05.2015
comment
@ Дэйв Джон был прав ... Тебе действительно нужно хранить txt? ... Почему бы не записать в двоичный файл? Ознакомьтесь с классом System.IO.BinaryWriter здесь - ›msdn.microsoft.com/en-us/library/   -  person waltmagic    schedule 15.05.2015
comment
Если вы хотите преобразовать строку в массив битов, вы можете использовать System.Collection.BitArray. Просто проанализируйте строку в массиве bool (вы должны знать, как это сделать), хотя я не думаю, что на самом деле вы спрашиваете.   -  person Rogue    schedule 15.05.2015
comment
Нет, текстового файла можно избежать. Я использовал это как помощь, чтобы увидеть, работает ли код. У меня есть строки, которые выглядят как 1,10,101, ..., 1001101, они не создают байт, и я хотел бы по возможности избежать объединения их в виде головоломки для создания байта. Ну, эти строки нужно сохранить в файл (в общем). Итак, мой вопрос - это строка a = 10011010100001011010001 (случайная), которая будет сохранена как 10011010100001011010001 (двоичное число). Надеюсь это поможет.   -  person Dave    schedule 15.05.2015