Организация внешних файлов и работа с ними

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

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

До сих пор мы рассматривали задачи, в которых исходные данные поступали с клавиатуры в память ЭВМ, а результаты выводились на экран. Таким образом, ни исходные данные, ни результаты вычислений не сохранялись. Всякий раз при выполнении одной и той же программы (особенно при ее отладке) приходится заново вводить исходные данные.

Создание внешних файлов данных для постоянного хранения на МД и возможность обрабатывать эти файлы в программе является эффективным средством программирования.

В PASKALe файл представляет собой последовательность элементов одного типа (простого или сложного). В отличие от массива длина файла, т. е. количество элементов, не задается, место элемента не определяется индексом и каждый элемент становится доступным только после перебора всех предыдущих элементов. Такие файлы называются последовательными. Необходимо заметить, что создание и обработка внешних файлов зависят как от конкретной реализации микроЭВМ, так и от версии PASKAL.

Во многих версиях PASKAL для микроЭВМ допускается хранение файлов на диске как символьных данных. При считывании файла в оперативную память машины символы файла преобразуются в тот тип данных, который объявлен в программе.

Если программа взаимодействует с внешними файлами, то файлы должны быть описаны в программе либо явно в разделе переменных VAR, либо с использованием раздела типов TYPE. Объявление файлов в разделе переменной имеет вид: VAR имя файла: FILE OF базовый тип; *** VAR FT: FILE OF CHAR; (*файл символьных данных*) FINP: FILE OF REAL; (*файл действительных данных*) M: FILE OF INTEGER; (*файл целых данных*) Файлы символьных данных называют текстовыми файлами. Описание текстового файла FILE OF CHAR Эквивалентно описанию TEXT. Поэтому в предыдущем примере текстовый файл FT можно объявить в виде: VAR FT: TEXT; Как было отмечено ранее, определение данных с исключением раздела описания типов TYPE делает программу более универсальной и упрощает отладку программы. Объявление файлов в этом случае имеет вид: TYPE имя типа = FILE OF базовый тип; VAR имя файла: имя типа; *** Для текстового файла FT описание имеет вид: TYPE T=FILE OF CHAR; VAR FT: T; Здесь Т — введенный тип данных.

Рассмотрим основные 3 вида взаимодействия программы с внешними файлами: чтение файла, запись файла, чтение и запись.

Чтение файла.

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

В программе необходимо выполнить следующие действия для чтения файла: открыть файл для чтения (RESET), ввести данные файла в программу (`READ), закрыть файл для чтения (CLOSE).

Внешний файл, из которого читаются данные, часто называют входным файлом.

Общая форма чтения файла имеет вид: RESET (имя 1) ;…

READ (имя 1, параметры) ;…

CLOSE (имя 1); Многоточием отмечено наличие каких-либо операторов программы.



Теги: программе