rewind – установка текущей позиции для чтения/записи в начало файла.
Синтаксис:
#include < stdio.h >
void rewind (FILE *stream);
Аргументы:
stream – указатель на управляющую таблицу потока данных.
Возвращаемое значение:
Нет возвращаемых значений.
Описание:
Функция rewind устанавливает текущую позицию для чтения/записи файла, связанного с потоком данных, на который указывает аргумент stream, в начало файла и сбрасывает индикатор ошибок потока данных.
По сути, вызов этой функции аналогичен (кроме сброса индикатора ошибок) вызову функции fseek со следующими аргументами:
fseek (stream, 0, SEET_SET);
Пример:
В примере открывается файл для чтения, содержащий строку «тест чтения». Из файла считывается строка, затем производится позиционирование на начало и повторно считывается строка.
#include < stdio.h > // Для printf, fopen, fclose, fgets, rewind
int main (void)
{
// Переменная, в которую будет сохранен указатель
// на управляющую таблицу открываемого потока данных
FILE *mf;
// Переменная в которую будут сохраняться считанные строки
char str [32];
printf (“Открытие файла: ”);
// Открытие файла
mf=fopen (“myfile/test.txt”,”r”);
// Проверка открытия файла
if (mf == NULL) printf (“ошибка\n”);
else printf (“выполнено\n”);
// Чтение одной строки из файла
fgets (str, sizeof (str), mf);
// Вывод считанной строки на консоль
printf (“ %s\n”,str);
//Позиционирование на начало файла
rewind (mf);
// Чтение одной строки из файла
fgets (str, sizeof (str), mf);
// Вывод считанной строки на консоль
printf (“ %s\n”,str);
// Закрытие файла
printf (“Закрытие файла: ”);
if ( fclose (mf) = EOF) printf (“ошибка\n”);
else printf (“выполнено\n”);
return 0;
}
| |
Результат:
Вывод на консоль:
Открытие файла: выполнено
     тест чтения
     тест чтения
Закрытие файла: выполнено
|
Смотри так же:
fseek
fgetpos
fseeko
fsetpos
ftell
ftello
rewind
|