Чтение файла блоками - C#
Формулировка задачи:
Есть код, который работает:
А в этом необработанное исключение System.ArgumentExpection в 6 строке:
Да, еще есть разница в размере buf: в первом случае 64 байта, во втором - 512.
Ткните носом где я косячу, плиз...
for (offset = 0; offset < bfs.Length; offset += LenBuf)
{
bfs.Seek(offset, SeekOrigin.Begin);
bfs.Read(buf, 0, LenBuf);
FillPicBox();
if (Mode != 0)
break;
Thread.Sleep(200); //задержка
count++;
label19.Text = Convert.ToString(count);
}//чтение блока из файла с позиции offset в buf
public void TransmitBlocks()
{
FileStream bfs = new FileStream(MyPutch, FileMode.Open, FileAccess.Read); //открыть поток
bfs.Seek(offset, SeekOrigin.Begin); //установить начало чтения
bfs.Read(buf, 0, LenBuf); //считать LenBuf(512) байтов в buf
bfs.Close(); //закрыть поток
Blks--; //декремент счетчика блоков
}Решение задачи: «Чтение файла блоками»
textual
Листинг программы
buf = BitConverter.GetBytes(Blks); //количество передаваемых блоков