Глава 12. Библиотечные функции Borland C++_______________
// Открыть существующий файл для исправления (чтения и записи) if ((fHandle = fopen ( "NAMES.TXT", "r+t")) == NULL) {
// При ошибке открытия файла вывести сообщение // и выйти с кодом возврата 1 printf("%s\n","Error Opening File");
return (1) ;
}
while ((fgets( StrBuf, 80, fHandle)) != NULL) {
// Получить текущее значение файлового указателя CurPos = ftell( fHandle);
// Проверка на совпадение прочитанного имени // ,с искомой строкой if (stricmp (StrBuf, NameCmp) ==0) {
// При совпадении передвинуть указатель
//в начало найденной строки и записать
// на это место новую строку.
fseek(fHandle,(CurPos - strlen(NameCmp)-1), SEEK_SET);
fprintf(fHandle,"%s\n","Patty") ;
} }
_____285
// fseek на начало файла fseek(fHandle, 0, SEEK_SET);
// Последовательно прочитать и вывести содержимое
// файла, пока функция fgets() не возвратит NULL,
// означающий конец файла.
while ((fgetsf StrBuf, 80, fHandle)) != NULL)
{
printf("%s\n",StrBuf) ;
}
//Закрыть файл fclose ( fHandle) ;
return (0) ;
}
В результате выполнения этой программы мы получим следующий результат:
C:>SHOWERR1 '
Nanci
Jim
David
Patty
heryl