(Dos)
Ребятки, тупик! Не пойму, почему после пробежки по всему файлу и установки на начало метод get() отказывается читать данные.
код:
char filename[25];
ifstream Handle;
Handle.open(filename);
while(Handle.get(symbol))
что-то делаем....
Handle.seekg(0L,ios::seek_dir(0))
Handle.get(symbol) <- уже ничего не читает, хотя указатель находится на начале файла, т.к. Handle.tellg() возвращает 0
[C++] Ма-а-алюсенькая проблема с потоковым чтением из файла...11.11.02 19:08 Автор: amirul <Serge> Статус: The Elderman
> (Dos) > Ребятки, тупик! Не пойму, почему после пробежки по всему > файлу и установки на начало метод get() отказывается читать > данные. > > код: > char filename[25]; > ifstream Handle; > > Handle.open(filename); > while(Handle.get(symbol)) > что-то делаем.... > Handle.seekg(0L,ios::seek_dir(0)) > Handle.get(symbol) <- уже ничего не читает, хотя > указатель находится на начале файла, т.к. Handle.tellg() > возвращает 0
Попробуй сбросить состояние потока перед rewind()-ом (istream::clear() по мойму - жисть не мила без MSDN-а). Дело в том, что когда поток переходит в какое-нить состояние кроме good (eof в том числе) любые операции с ним воспринимаются как операции над ошибочным потоком.