Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
kebal
9 / 9 / 0
Регистрация: 02.11.2012
Сообщений: 153
#1

Обработка файлов. Функция seekg(); - C++

20.02.2013, 01:06. Просмотров 838. Ответов 4
Метки нет (Все метки)

ifstream fileReader("sdf.txt");
int a;
while (fileReader >> a) { ...; }
А теперь, чтобы повторить данный while нужно написать
fileReader.clear();
fileReader.seekg(0);
Так вот, почему не достаточно одного seekg(0)? Эта функция перемещает ползунок чтения на начало файла. А вот функция clear() устанавливает флаг ошибки в положение "нет ошибки" и я не пойму зачем нам это нужно, если и функции seekg(0) по идее достаточно, а ошибки считывания никакой не было.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.02.2013, 01:06     Обработка файлов. Функция seekg();
Посмотрите здесь:

C++ Не запускается програма с seekg
Какие различия у функций seekg и seekp для работы с файлами? C++
C++ Разница между seekg() и seekp()
C++ c++ обработка файлов
методы seekg и seekp C++
C++ Как работает команда seekg?
seekg() не срабатывает по окончанию файла C++
Обработка файлов C++
C++ Функция seekg
C++ Различия в использовании seekg и seekp при работе с fstream
C++ Почему clear необходимо использовать до seekg?
C++ Обработка файлов

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
vua72
414 / 414 / 85
Регистрация: 28.11.2010
Сообщений: 1,175
Завершенные тесты: 1
20.02.2013, 01:27     Обработка файлов. Функция seekg(); #2
если вы прочитаете EOF, то больше ничего сделать не сможете, а такая последовательность действий восстанавливает работоспособность потока
kebal
9 / 9 / 0
Регистрация: 02.11.2012
Сообщений: 153
20.02.2013, 01:32  [ТС]     Обработка файлов. Функция seekg(); #3
то есть если даже весь файл состоит из int, то когда мой while прочитает последний int программа дойдет до конца файла, да? не нужно задавать символ EOF в файле напрямую типа ^Z?
vua72
414 / 414 / 85
Регистрация: 28.11.2010
Сообщений: 1,175
Завершенные тесты: 1
20.02.2013, 01:41     Обработка файлов. Функция seekg(); #4
Да, дойдет.
alsav22
5410 / 4806 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
20.02.2013, 01:46     Обработка файлов. Функция seekg(); #5
Цитата Сообщение от kebal Посмотреть сообщение
не нужно задавать символ EOF в файле напрямую типа ^Z?
В каждом файле (даже пустом) он есть.
Yandex
Объявления
20.02.2013, 01:46     Обработка файлов. Функция seekg();
Ответ Создать тему
Опции темы

Текущее время: 10:45. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru