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 диска С. |