Чтение после конца потока невозможно. C#

615
31 декабря 2016, 13:31

Всем доброго времени суток, столкнулся с проблемой

Чтения после конца потока невозможно

Дело в том что я читаю бинарный файл :

 while (reader2.PeekChar() > -1)
 {
    numb2 = reader2.ReadInt32();
    Int32 ndef2 = reader2.ReadInt32();
    BitVector32 bv2 = new BitVector32(ndef);
    int nr2 = bv2[nr_s];
    y2 = bv2[y_s];
    int sm2 = bv2[sm_s];
    ds2 = bv2[d_s];
    ms2 = bv2[m_s];
    int rs2 = bv2[r_s];
}

И так получилось что numb2 имеет запись в файле поэтому reader2.PeekChar() > -1 больше 1, но вот ndef2 уже нету в файле, и я получаю ошибку чтения после конца потока, может есть более правильный метод инициализации данных в файле, и если дальше записи нет, то просто передать 0 и перейти дальше, либо пропускать и идти дальше, просто не хотелось бы делать что-то вроде:

 while (reader2.PeekChar() > -1)
 {
    numb2 = reader2.ReadInt32();
  if (reader2.PeekChar() > -1){
    Int32 ndef2 = reader2.ReadInt32();
    BitVector32 bv2 = new BitVector32(ndef);
    int nr2 = bv2[nr_s];
    y2 = bv2[y_s];
    int sm2 = bv2[sm_s];
    ds2 = bv2[d_s];
    ms2 = bv2[m_s];
    int rs2 = bv2[r_s];
    }
}

Или все же придется ставить еще одну проверку, как я написал выше ?
Помогите пожалуйста разобраться.

READ ALSO
AngularJS + ASP .Net Web Api. В экшен не приходят данные

AngularJS + ASP .Net Web Api. В экшен не приходят данные

Не могу понять почему в экшен не приходят данныеКод JS:

468
PictureBoxImageDrawing

PictureBoxImageDrawing

Привет всемВозникла проблема с использованием стандартного graphics на picturebox

421
Не вызывается метод из другого класса

Не вызывается метод из другого класса

Не могу понять в чем ошибкаЕсть форма UIForm и класс WGen в UIForm вызываю WGen(в конце метода TwiceUsedWord):

392
Методы с одинаковыми сигнатурами в C#

Методы с одинаковыми сигнатурами в C#

Предположим, есть такой класс

418