Чтение файла блоками - C#

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

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

Есть код, который работает:
Листинг программы
  1. for (offset = 0; offset < bfs.Length; offset += LenBuf)
  2. {
  3. bfs.Seek(offset, SeekOrigin.Begin);
  4. bfs.Read(buf, 0, LenBuf);
  5. FillPicBox();
  6. if (Mode != 0)
  7. break;
  8. Thread.Sleep(200); //задержка
  9. count++;
  10. label19.Text = Convert.ToString(count);
  11. }
А в этом необработанное исключение System.ArgumentExpection в 6 строке:
Листинг программы
  1. //чтение блока из файла с позиции offset в buf
  2. public void TransmitBlocks()
  3. {
  4. FileStream bfs = new FileStream(MyPutch, FileMode.Open, FileAccess.Read); //открыть поток
  5. bfs.Seek(offset, SeekOrigin.Begin); //установить начало чтения
  6. bfs.Read(buf, 0, LenBuf); //считать LenBuf(512) байтов в buf
  7. bfs.Close(); //закрыть поток
  8. Blks--; //декремент счетчика блоков
  9. }
Да, еще есть разница в размере buf: в первом случае 64 байта, во втором - 512. Ткните носом где я косячу, плиз...

Решение задачи: «Чтение файла блоками»

textual
Листинг программы
  1.  buf = BitConverter.GetBytes(Blks);      //количество передаваемых блоков

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


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

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

10   голосов , оценка 3.9 из 5

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

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

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