Работа с файлами

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

Файлы позволяют решить две проблемы:

1) возможность формирования и сохранения значений для последующего использования другими программами (например, в программах многократной обработки информационных систем, таких как платежные ведомости, различные АСУ, базы данных, необходимость длительного хранения информации очевидна);

2) взаимодействие программ с внешними устройствами ввода-вывода: дисплеем, принтером, АСП и т.п.

В Паскале эти проблемы снимаются с помощью структурированных данных файлового типа.

Файловый тип данных в программе задается следующем образом:

type <имя файлового типа> = file of <тип компонентов>

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

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

var f: intfile; или var f: file of integer;

Файловая переменная является буфером между Паскаль-программой и внешним устройством и должна быть логически с ним связана. Связь осуществляется оператором языка Паскаль:

assign (<имя файловой переменной>,'<имя устройства>')

Как правило, файлы для хранения данных связаны с устройством внешней памяти на магнитных носителях (дисковод) и носят название внешние файлы. Если, например, файл с именем primer, dat логически связан с дисководом А:, то все данные, помещаемые в файл, будут храниться на этом дисковом накопителе, aустановка «окна» между программой и файлом будет определяться через файловую переменную f оператором

assign (f, 'primer.dat')

Если внешним устройством является принтер, то связь осуществляется оператором assign(f, '1st:'). Здесь 1st - логическое имя печатающего устройства. Ниже приведены логические имена внешних устройств ввода-вывода:

con - консоль; trm - терминал; kbd - клавиатура; 1st - принтер; aux - буфер сети;

usr-драйвер пользователя.

После осуществления связи файловая переменная f отождествляется с соответствующим файлом.

Для работы с файлом его необходимо открыть, а по окончании работы — закрыть Файл открывается для чтения оператором reset(f), для записи - оператором rewrite(f).

Чтение и запись данных осуществляется известными командами read/write, только в начале списка помещается имя файловой переменной:

read (f, <список ввода>); readln (f, <список ввода>);

write(f, <список вывода>); writeln(f, <список вывода>).

Закрытие файла осуществляется командой close(f).


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: