Работа с текстовыми файлами в Паскале

как проверить не закрыт ли текстовый файл открытый для чтения. открывал с помощью rewrite

Если в Turbo Pascal , то перед чтением нужно дать директиву компилятора {$i-}

Файл для чтения открывается Reset(Fl);
http://www.5byte.ru/tp7pub/0037.php
Проверка ошибок ввода-вывода (I/O checking).
{$I+}
Тип локальный. Если {$I-}, то результат ввода-вывода может быть проанализирован с помощью функции IOResult.

{IOResult.PAS}

{ Пример программы для функции IOResult }

Uses WinCrt;

Var F : File Of Byte;

Begin
{ Получаем имя файла из командной строки }
Assign(F, ParamStr(1));
{$I-}
Reset(F);
{$I+}
If IOResult=0 Then WriteLn('Размер файла: ', FileSize(F), ' байт.'))
Else WriteLn('Файл не найден.');
End.

По аналогии можно читать из файла и контролировать IOResult .

Попробуй из него что-нибудь прочитать.. . Хотя открытие текстового файла для чтения с помощью rewrite - это чудо программирования 😉

Как-то так:

{$I-}
Reset(Txt, Str);
{$I-}
if IOResult <> 0 then WriteLn('Attention: Файл закрыт для чтения');