Побайтное чтение строки и запись в файл - C#

Узнай цену своей работы

Формулировка задачи:

Есть файл единиц и нулей, я его записываю в строку E="10010.....". Нужно перевести ее в биты(массив видимо), по значениям, то есть первые 8 зн. - 1 бит, след. 8 знач- следующий бит и т.д. Записать в файл эти биты, причем в виде символов. В общем должен получиться сжатый двоичный файл. И потом нужно как-то обратно побайтно пройтись по каждому символу двоичного файла, то есть раскодировать обратно в строку из которой он собран. Как это можно сделать?

Решение задачи: «Побайтное чтение строки и запись в файл»

textual
Листинг программы
  1. string E = "10010001"; // Длина строки должна быть кратна 8
  2. using (var fstream = File.Create("1.bin"))
  3. {
  4.     for (int i=0; i<E.Length; i+=8)
  5.     {
  6.         byte b = 0, bit = 0x80;
  7.         for (int j=0; j<8; bit>>=1, j++)
  8.         {
  9.             if (E[i+j] == '1') b |= bit;
  10.         }
  11.         fstream.WriteByte(b);
  12.     }
  13. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.867 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут