Как проверить, что файл существует перед открытием? - Turbo Pascal
Формулировка задачи:
Аналог FileExists()
Решение задачи: «Как проверить, что файл существует перед открытием?»
textual
Листинг программы
write('Имя файла для чтения: ');
readln(nf);
nf:=nf+'.txt';
assign(f1,nf);
{$I-} reset(f1); {$I+}
if IOResult <> 0 then
begin
writeLn('Файл ',nf,' не найден!');
writeLn('Работа программы завершена. Нажмите ENTER');
readln;
exit;
end;
Объяснение кода листинга программы
- Запрашиваем у пользователя имя файла для чтения с помощью функции readln.
- Добавляем к имени файла расширение
.txtс помощью оператора присваивания и оператора конкатенации. - Используем функцию assign для назначения имени файла переменной f1.
- Используем оператор {$I+} для инициализации файла с помощью функции reset.
- Проверяем результат операции с помощью условного оператора if. Если результат не равен 0, то файл не найден, выводится сообщение об ошибке и работа программы завершается.
- Вызываем функцию readln для чтения символа новой строки после вывода сообщений об ошибке.
- Вызываем функцию exit для завершения работы программы.
- Вызываем функцию writeLn для вывода сообщения об ошибке.
- Вызываем функцию writeLn для вывода сообщения о завершении работы программы.
- Вызываем функцию readln для чтения символа новой строки после вывода сообщений.
- Вызываем функцию exit для завершения работы программы.