Побайтное чтение строки и запись в файл - C#
Формулировка задачи:
Есть файл единиц и нулей, я его записываю в строку E="10010.....". Нужно перевести ее в биты(массив видимо), по значениям, то есть первые 8 зн. - 1 бит, след. 8 знач- следующий бит и т.д. Записать в файл эти биты, причем в виде символов. В общем должен получиться сжатый двоичный файл.
И потом нужно как-то обратно побайтно пройтись по каждому символу двоичного файла, то есть раскодировать обратно в строку из которой он собран. Как это можно сделать?
Решение задачи: «Побайтное чтение строки и запись в файл»
textual
Листинг программы
- string E = "10010001"; // Длина строки должна быть кратна 8
- using (var fstream = File.Create("1.bin"))
- {
- for (int i=0; i<E.Length; i+=8)
- {
- byte b = 0, bit = 0x80;
- for (int j=0; j<8; bit>>=1, j++)
- {
- if (E[i+j] == '1') b |= bit;
- }
- fstream.WriteByte(b);
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д