Читайте также:
|
|
Одной из важных задач, связанных с файлами, является чтение файла от начала до конца. Эта задача может быть связана с выводом содержимого файла, загрузкой данных из файла в массив, поиском каких-либо данных в файле и т.д. Задачи могут быть разными, но все они требуют считывания данных из файла, пока этот файл не закончится.
Наиболее простой вариант этой задачи – вывод содержимого файла на экран. Мы рассмотрим следующий алгоритм:
Напомним, что для считывания одного символа из файла на языке Си используется функция fgetc(). Следующий фрагмент кода, снабжённый комментариями, реализует этот алгоритм.
//Объявляем файловый указатель и открываем файл.
FILE* fp = fopen("tutorial.cpp", "r");
//Пока не конец файла
while (!feof(fp)) {
//Считываем символ
char ch = fgetc(fp);
//Выводи его на экран
putchar(ch);
}
//Закрываем файл
fclose(fp);
После запуска программы на экране появится текст, записанный в файле. Если в качестве файла указать файл с кодом программы, то на экране появится код программы:
Если имя файла указано неправильно, то возникнет ошибка времени исполнения, говорящая о том, что файл с указанным именем не может быть открыт:
Вот как выглядит эта же программа на C++:
ifstream fp("tutorial.cpp");
//Пока неконец файла inFile
while (!fp.eof()) {
//Считываем символ из файла и перемещаем
//файловый указатель на следующую позицию
char symbol = fp.get();
//Выводи считанный символ на экран
cout << symbol;
}
fp.close();
Функции feof() и eof() возвращают true, если конец файла достигнут, и false – иначе.
Дата добавления: 2015-08-17; просмотров: 38 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Чтение информации из файла | | | Бинарный и текстовый режимы |