Справочное руководство по языку Ада-83


Файлы последовательного и прямого доступа


Для внешних файлов определены два сорта доступа:

последовательный доступ

и

прямой доступ.

В настраиваемых пакетах SEQUENTIAL_IO и DIRECT_IO описаны соответствующие файловые типы и связанные с ними операции. Объект файлового типа, используемый для последовательного доступа, называется

последовательным файлом,

а используемый для прямого доступа —

прямым файлом.

При последовательном доступе файл рассматривается как последовательность значений, которые передаются в порядке их поступления (от программы или из окружения). Если файл открыт, то передача начинается с начала файла.

При прямом доступе файл рассматривается как набор элементов, занимающих последовательные позиции в линейном порядке; значение может быть передано в элемент файла (или из него), находящийся в любой выбранной позиции. Позиция элемента задается его

индексом,

который является положительным числом определяемого реализацией целого типа COUNT. Индекс первого элемента в файле (если он есть) равен единице; индекс последнего элемента (если он есть) называется

текущим размером;

текущий размер файла, не содержащего ни одного элемента, равен нулю. Текущий размер — это характеристика внешнего файла.

Открытый прямой файл имеет

текущий индекс,

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

Для прямых файлов допустимы все три вида файла. Для последовательных файлов допустимы только виды IN_FILE и OUT_FILE.

Ссылки:

вид файла 14.1, тип 14.3, файл вида IN_FILE 14.1, файл вида OUT_FILE 14.1.

14.2.1. УПРАВЛЕНИЕ ФАЙЛАМИ

В этом разделе описаны процедуры и функции, предназначенные для управления внешними файлами; их описания повторены в каждом из трех пакетов последовательного, прямого и текстового ввода-вывода. Процедуры CREATE, OPEN и RESET при вводе-выводе текстов




Начало  Назад  Вперед