|
Типизированные файлы
Длина любого компонента
типизированного файла строго постоянна, что дает возможность
организовать прямой доступ к каждому из них (т.е. доступ
к компоненту по его порядковому номеру).
Перед первым обращением к процедурам
ввода-вывода указатель файла стоит в его начале и указывает
на первый компонент с номером 0. После каждого чтения
или записи указатель сдвигается к следующему компоненту
файла. Переменные в списках ввода-вывода должны иметь
тот же тип, что и компоненты файла. Если этих переменных
в списке несколько, указатель будет смещаться после
каждой операции обмена данными между переменными и дисковым
файлом.
Процедура READ.
Обеспечивает чтение очередных компонентов
типизированного файла. Формат обращения:
READ (<ф.п.>,<сп.ввода>)
Здесь <cn.вводa> - список ввода,
содержащий одну или более переменных такого же типа,
что и компоненты файла.
Файловая переменная <ф.п.> должна
быть объявлена предложением FILE OF... и связана с именем
файла процедурой ASSIGN. Файл необходимо открыть процедурой
RESET. Если файл исчерпан, обращение к READ вызовет
ошибку ввода-вывода.
Процедура WRITE.
Используется для записи данных
в типизированный файл. Формат обращения:
WRITE (<ф.п.>,<сп.вывода>)
Здесь <сп.вывода> - список вывода,
содержащий одно или более выражений того же типа, что
и компоненты файла.
Процедура SEEK.
Смещает указатель файла к требуемому
компоненту. Формат обращения:
SEEK (<ф.п.>,<N компонента>)
Здесь <N компонента> - выражение
типа LONGINT, указывающее номер компонента файла.
Первый компонент файла имеет номер 0.
Процедуру нельзя применять к текстовым файлам.
Функция FILESIZE.
Возвращает значение типа LONGINT, которое
содержит количество компонентов файла. Формат обращения:
'
FILESIZE (<ф.п.>)
Функцию нельзя использовать для текстовых
файлов. Чтобы переместить указатель в конец типизированного
файла, можно написать:
seek (FileVar, FileSize(FileVar));
где FILEVAR - файловая переменная.
Функция.FILEPOS.
Возвращает значение типа LONGINT, содержащее
порядковый номер компонента файла, который будет обрабатываться
следующей операцией ввода-вывода. Формат обращения:
FILEPOS (<ф.п.>)
Функцию нельзя использовать для текстовых
файлов. Первый компонент файла имеет порядковый номер
0.
|