Я не знаю, что я здесь делаю неправильно. мой код работает так, как ожидалось, на первом проходе, но на втором проходе он не запускается и генерирует исключение, которое просто говорит: «Чтение будет переполнять буфер%»Чтение будет ошибкой буфера переполнения
Полагаю, что я делаю что-то неправильно с буфером, и это не так как я его переписываю?
я имел по существу один и тот же код и изменил его в соответствии с примером, но не MSDN радости ..
using (Stream stream = new FileStream(path, FileMode.Open, FileAccess.Read))
{
byte[] buffer = new byte[1024];
int bytesRead = 0;
long bytesToRead = stream.Length;
while (bytesToRead > 0)
{
int n = stream.Read (buffer, bytesRead, 1024);
if (n == 0) break;
//do work on buffer...
bytesRead += n;
bytesToRead -= n;
}
}
Работа в .NET 2.0 Mono.
Переменная bytesRead должна оставаться на нуле, я думаю. Это смещение в буфер, а не файл. –