Доступ к файлам

Файлы, а также логические устройства становятся доступны программе только после выполнения процедуры связывания файловой переменной с именем существующего или создаваемого файла и открытия его для чтения или записи.

Связывание производится с помощью стандартной процедуры:

ASSIGN(<файловая переменная>,<имя файла или логическое устр-во>);

Файловую переменную называют также логическим именем файла.

Имя файла - это любое выражение строкового типа, которое строится по правилам определения имен в операционной системе MS-DOS.

Имя файла может содержать до 8 разрешенных символов (прописных и

строчных букв латинского алфавита, арабских цифр или специальных

символов: ! @ # $ % ^ & ( ) ~ ′ - _ ). За именем может следовать расширение, содержащее до трех разрешенных символов, которое отделяется от имени точкой. Если файл располагается не в одном каталоге с использующей его программой, то перед именем должен указываться путь к файлу. Путь к файлу вместе с именем и расширением называют полным именем файла.

Например: C:MYDIRK1file.dan - полное имя файла, расположенного на диске С:,

MYDIRK1 - имена каталога и подкаталога, составляющих путь к файлу, а file.dan - имя файла и расширение.

Максимальная длина полного имени файла - 79 символов.

В Тurbo Рascal можно открыть файл для чтения, для записи информации, а также, в случае использования типизированных файлов, для чтения и записи одновременно.

Для чтения файл открывается с помощью стандартной процедуры:

RESET ( <файловая переменная>);

При выполнении этой процедуры дисковый файл подготавливается к чтению информации: в результате специальная переменная - указатель, связанная с этим файлом, будет указывать на начало файла, т.е. на компонент с порядковым номером 0. Если в процессе выполнения программы делается попытка открыть для чтения не существующий файл, то возникает ошибка/

Для записи файл открывается с помощью стандартной процедуры:

REWRITE ( <файловая переменная>);

Эта процедура подготавливает новый файл к приему информации, устанавливая указатель на компонент файла с номером 0. Если файл уже существовал, то его содержимое будет уничтожено.

Добавление информации в уже существующий файл для различных видов

файлов производится различными способами и они будут рассмотрены

позже.

По завершении работы с файлом его необходимо закрыть с помощью стандартной процедуры:

CLOSE ( <файловая переменная>);

При создании нового или изменении имеющегося файла эта процедура обеспечивает сохранение в файле всех новых записей и регистрацию файла в каталоге. Функции процедуры CLOSE выполняются автоматически по отношению ко всем открытым файлам при нормальном завершении программы.

Для определения конца файла используется стандартная функция:

EOF ( <файловая переменная>)

Эта функция возвращает значение типа BOOLEAN. Значение этой функции равно TRUE, если файловый указатель стоит в конце файла, и FALSE - в противном случае. При записи это

означает, что очередной компонент будет добавлен в конец файла, а при чтении - что файл исчерпан.

Физический файл может быть переименован в процессе работы

программы с помощью процедуры:

RENAME ( <файловая переменная>, <новое имя файла на диске>);

Новое имя - строковое выражение (см. процедуру ASSIGN). Перед использованием этой процедуры файл должен быть закрыт.

Физический файл может быть удален с помощью процедуры:

ERASE ( <файловая переменная>);

Перед использованием процедуры удаляемый файл должен быть закрыт.