Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции - Паскаль-переплет.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
626 Кб
Скачать
☆

Материалы для дополнительного чтения. §20. Файловый тип данных

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

Файл - это область памяти на внешнем носителе, в которой хранится некоторая информация. В языке Паскаль файл представляет собой последовательность элементов одного типа. Мы будем работать только с файлами последовательного доступа. В таких файлах, чтобы получить доступ к элементу, необходимо последовательно просмотреть все предыдущие.

Объявление файловой переменной в разделе описания переменных имеет вид :

var <имя файла>: File of <тип элементов>;

Например:

var Ft : File of integer;

M : File of char;

Type File_integer=File of integer

File_char=File of char;

Var F1: File_integer;

F2: File_char;

Так как в описании указывается тип элементов, такие файлы называются типизированными. Все элементы файла пронумерованы начиная с нуля.

С каждым файлом связан так называемый файловый указатель. Это неявно описанная переменная, которая указывает на некоторый элемент файла.

(0)

(1)

...

(к)

(к+1)

...

файловый указатель

Все операции производятся с элементом, который определен файловым указателем.

Связь переменной файлового типа с файлом на диске.

Процедура Assign(<имя файловой пер-ой>,’<имяфайла на диске>’);

Например:

Assign(F1,’A:INT.DAT’);

После установления такого соответствия все операции, выполняемые над переменной F1, будут выполнятся над файлом, хранящимся на диске А и имеющим имя INT.DAT

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

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

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

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

Reset(<имя файловой переменной>);

Собственно чтение данных из файла выполняется процедурой

Read(<имя файловой переменной>,<имя переменной>);

Переменная должна иметь тот же тип, что и компоненты файла. Отметим, что если оператор ввода имеет вид Read(<имя переменной>), то данные вводятся с клавиатурой, а если Read(<имя файловой переменной>,<имя переменной>); то данные вводятся из файла, хранящегося на диске.

Закрытие файла

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

Close(< имя файловой переменной>)

Общая схема чтения данных из файла, таким образом, следующая:

Reset(<имя файловой переменной>);

.......

Read(<имя файловой переменной>,<имя переменной>);

...........

Close(<имя файловой переменной>);