А.Н. Павлов. Высокоуровневые методы информатики и программирования

 

4.5.1. Операторы языка Visual Basic для взаимодействия с файловой системой

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

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

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

Open Имя файла For Режим работы As #Дескриптор файла

Open – имя оператора для открытия файла.

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

 Режим работы – это ключевое слово, которое определяет, что будет делаться с данными (существует три варианта):

      Output – если файл открывается для записи данных на какой-либо внешний носитель, данные записываются в файл с первой позиции, все предыдущие данные, если они были записаны, будут стерты;

      Append – если файл уже существует, то новые записи будут добавляться после последней записи;

      Input – если файл открывается для чтения из него данных.

Дескриптор файла – это любое целое число (целое число обозначается символом # - решетка) от 1 до 511, которое служит идентификатором файла в операционной системе (если открывается одновременно несколько файлов, то все файлы должны иметь разные номера дескрипторов).

            Операция записи данных  в файл на носитель организуется с помощью операторов Write и Print, синтаксис записи оператора:

Write  #Дескриптор файла, [Список значений]

 или Print  #Дескриптор файла, [Список значений]

Дескриптор Файла – должен обязательно совпадать с целым числом, которое определено в операторе Open.

Оператор Write просматривает последовательно список значений и записывает их через запятую в файл, после окончания записи ставит служебную пометку – конец записи.

Оператор Print применяется при форматировании данных в записи, для этого допускается использование функции Sps(n) – вставка n пробелов между данными или функции Tab(n) – для указания номера n позиции для записи следующего значения.

            Операция чтения файла (доступ к внешнему носителю) можно организовать с помощью операторов Input и Line Input, которые имеют следующий синтаксис:

Input  #Дескриптор файла  Список переменных

Line Input  #Дескриптор файла  Переменная

Дескриптор файла – это целое число, совпадающее с идентификатором открытого файла.

Список переменных – должен совпадать со списком переменных и их типом, определенных при записи данных в файл.

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

 

Hosted by uCoz