Глава 8: Ввод/Вывод в файлы
178 MapBasic Руководство пользователя
Обзор файлового ввода/вывода
Файловый ввод/вывод (англоязычное сокращение i/o) – это процесс
чтения информации из файлов (ввод) и/или записи информации в
файлы (вывод). Язык программирования MapBasic содержит набор
стандартных для BASIC операторов ввода/вывода и функций,
позволяющих читать и/или писать в текстовые или двоичные файлы.
Более того, поскольку MapInfo и MapBasic построены таким образом,
чтобы их можно было использовать на разных вычислительных
платформах, файловый ввод/вывод в MapBasic позволяет обеспечивать
перенос данных без потерь.
Существует три типа доступа к файлам: последовательный,
произвольный и двоичный. Какой из этих типов следует использовать
в каждом конкретном случае, зависит от характера хранимых в файле
данных:
• Последовательный доступ применяется при чтении текста из
текстовых файлов с произвольной длиной строки. Например,
одна строка может содержать 50 символов, а следующая –
больше 50 символов и т.д. К таким файлам следует
осуществлять последовательный доступ.
• Произвольный доступ применяется при чтении из текстовых
файлов с фиксированной длиной строки. Скажем, если все
строки в файле имеют длину ровно 80 символов, то к такому
файлу следует применять произвольный доступ.
• Двоичный доступ применяется по отношению к нетекстовым
(двоичным) файлам данных. Если Вы производите запись,
используя двоичный доступ к файлу, MapInfo сохраняет
числовые данные в таком файле оптимальным образом
(минимизирует размер файла). Двоичные файлы нельзя
просматривать и редактировать в текстовом редакторе; но зато
они позволяют более экономно хранить числовые данные, чем
это возможно в текстовых файлах.
Независимо от выбранного типа доступа, первое Ваше действие ввода
или вывода – это открытие файла. В MapBasic файл можно открыть с
помощью оператора Open File. Этот оператор может содержать
несколько необязательных предложений, которые следует употреблять
в зависимости от типа файла. Следующий оператор открывает
текстовый файл с последовательным доступом для чтения:
Open File "settings.txt" For Input As #1