Назад на содержание Работа с файлами в Basic


Общая информация

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

Файлы прямого доступа

Пример

Контрольные вопросы

Задания


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

Последовательный файл состоит из записей, доступ к которым осуществляется последовательно, т.е. n-я запись следует за (n - 1)-ой как при формировании файла, так и при считывании из него.
Создание последовательного файла включает следующие шаги:

  • открытие файла (оператор OPEN);
  • вывод данных в файл (операторы PRINT#, WRITE#, или PRINT# USING);
  • закрытие файла (оператор CLOSE).
Считывание из последовательного файла включает следующие шаги:
  • открытие файла;
  • ввод данных из файла (операторы INPUT#, INPUT$, LINE INPUT#);
  • закрытие файла.

Оператор OPEN - подготавливает файл для чтения из файла (INPUT) или записи в файл (OUTPUT, если создается новый файл, APPEND, если добавляются записи в уже существующий файл).

                                        INPUT
OPEN имя файла FOR OUTPUT AS # номер файла
                                       APPEND

Оператор CLOSE - закрывает файл, т.е. делает невозможным чтение или запись.

CLOSE [# номер файла]

Оператор CLOSE без параметров закрывает все открытые файлы. Единицей информации, которая передается при записи в файл или чтении из файла, является запись (логическая запись). Запись делится на поля. Каждое поле связано с одним элементом данных.

    Могут быть созданы два типа последовательных файлов:

  1. с разделителями полей, когда каждое поле автоматически отделяется специальным символом (например, запятой). Для создания такого файла используется оператор WRITE#, для чтения из него - оператор INPUT#. Данные в файле хранятся в таком виде, как если бы они наби- рались на клавиатуре при выполнении оператора INPUT, т.е. разделены запятыми и каждая запись заканчивается переводом строки. Оператор INPUT# - имеет вид INPUT # номер файла, список переменных где переменные в списке по типу должны соответствовать данным в файле.
  2. поля не разделены, и каждая запись точно такая же, как если бы эти данные отображались на экране или печатались на принтере. Для создания такого файла используется оператор PRINT#, для чтения из него - операторы INPUT$ или LINE INPUT#.

Оператор _INPUT$ - передает из файла сразу всю строку (запись) указанной длины n в символьную переменную, например,

ST$ ST$ 2 = 0INPUT$ (n, # 1номер файла 0)

Оператор LINE INPUT# - передает в указанную переменную ST$ всю строку независимо от ее длины:

LINE INPUT # номер файла,ST$

В начало
Hosted by uCoz