Введение в программирование - Учебное пособие (Корочкин А. В.)

Глава15.  ввод -вывод

В языке Ада отсутствуют операторы ввода-вывода. Для организации ввода-вывода различной информации пользователю предоставляются развитые средства в виде ресурсов предопределенных пакетов, яв-ляяющихся дочерними корневого пакета Ada. Настраиваемые пакеты DirectJO и SeqentialJO обеспечивают операции ввода-вывода, которые применительны к файлам , содержащих элементы данного типа. Настраиваемый пакет Storage_IO поддерживает чте­ние и запись в буфер памяти. Пакеты Text_IO и Wide_Text_IO под­держивают дополнительные операции для ввода-вывода текста. Гете­рогенный ввод-вывод обеспечивается пакетами Streams.Stream_IO и Text_lO.Text_Stream. В пакете IO_Exceptions определены исключе­ния, связанные с вводом-выводом.

Такой подход поддерживает независимость программ и возможность их переносимости. Кроме того, обеспечивается возможность реализа­ции дополнительных средств ввода-вывода, которые пользователь сам может реализовать через пакеты.

Указанные предопределенные пакеты обеспечивают разнообразные средства работы с файлами в виде типов, процедур и функций:

Типы для работы с файлами: File_Type         - - лимитированный личный ти File_Mode        - - перечисляемый тип

Процедуры работы с файлами

Open     - -Create   - • Read Put Reset Set Index

Close Delete Write Get

открытие   файла создание   файла чтение      файла запись в    файл

- -    закрытие файла

- -   уничтожение файла

- -    запись в файл

- -    чтение   файла восстановление файла для   чтения записи - - установка   текущего   индекса

Функции  работы с файлами :

Name        - -    определение  имени    внешнего файл End_Of_File         --     проверка   конца   файла ls_Open                     --     проверка    состояния    файла Mode                         - -     проверка    текущего    вида   файла Form                          --     форма    внешнего    файла

182

Ада 95. Введение в программирование

 

 

Глава 15. Ввод-вывод

183

Index Size

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

размер    внешнего   файла

 

Существуют два вида доступа к внешним файлам - последовательный доступ и прямой доступ. Соответствующие типы файлов и связанные с ними операции описаны в настраиваемых пакетах SeqentialJO и DirectJO. Файловый объект, используемый для последовательного доступа, называется последовательным файлом ( sequential file) или фай­лом прямого доступа. Файловый объект для прямого доступа называ­ется прямым файлом (direct file ) или файлом прямого доступа. В языке также используются потоковые файлы (stream file).