1. Общие замечания

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

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

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

Файлы бывают стандартными, т.е. определенными разработчиками или администраторами операционной системы или вычислительной среды, а также пользователем, т.е. человеком, составляющим программы в каком-либо алгоритмическом языке (например в Pascal), или с помощью других программных продуктов (баз данных, редакторов и т.д.).

Каждый файл имеет свое имя, которое зарегистрировано в соответствующей директории (оглавлении).

Определение файлового типа строится по такой схеме:

Туре имя типа=file of тип компонент;

Var идентификатор,.., идентификатор: имя типа;

Например:

Туре zap=record

Nom: integer;

FIO: string [20];

oklad: real; end;

Ft=file of zap;

Var a, b, с: Ft;

Описаны три файла с именами а, b, с типа Ft. Компонентами файлов служат записи типа zap. Другими словами, файл схематично можно представить в виде «ленты» компонент, каждая из которых является записью типа zap. Доступ к компонентам файла может быть последовательным и прямым. Последовательный доступ - это когда для обращения к n-й компоненте необходимо «посмотреть» n-1 компонент; прямой доступ - обращение к компоненте идет прямо по «ключу» (номеру компоненты), без «просмотра» предыдущих компонент.

При работе с файлом «внимание» машины сосредоточено на компоненте, определенной указателем файла (этой компонентой будет работать машина при следующем обращении к файлу).

Имя файла должно быть уникальным и состоящим из собственного имени и необязательного расширения - типа файла, содержащего три символа и отделенного от основного имени точкой. Расширение, как правило, указывает в мнемонической форме на содержимое файла: pas, ехе, txt и т.д. В некоторых случаях тип файла присваивается автоматически операционной системой или используемым пакетом.

Каждый диск, содержащий файлы, имеет оглавление, в которое помещается информация о его имени, расширении, времени и дате его создания, о местонахождении на физическом носителе (например, на диске С или D).

Для поиска файла необходимо указать диск, каталог, подкаталог, имя файла, его расширения.

Например: C:\TURBO\Prim\Prim46.pas.

Здесь файл Prim 46.pas находится в подкаталоге Prim каталога TURBO диска С.