Под файлом понимается именованная область внешней памяти ПК (жесткого диска, гибкой дискеты, диска CD-ROM).
Любой файл имеет три характерные особенности. Во-первых, у него есть имя, что дает возможность программе работать одновременно с несколькими файлами. Во-вторых, он содержит компоненты одного типа. Типом компонентов может быть любой тип Object Pascal, кроме файлов. Иными словами, нельзя создать "файл файлов". В-третьих, длина вновь создаваемого файла никак не оговаривается при его объявлении и ограничивается только емкостью устройств внешней памяти.
Файловый тип можно задать одним из трех способов:
Здесь <имя> - имя файлового типа (правильный идентификатор);
File, of - зарезервированные слова (файл, из); TextFile - имя стандартного типа текстовых файлов; <тип> - любой тип Object Pascal, кроме файлов. Например:
type Product = record Name : String; Code : Word; Cost: Comp end; TextSO = File of String[80];
var Fl: File of Char; F2: TextFile; F3: File; F4: TextSO; F5: File of Product;
В зависимости от способа объявления можно выделить три вида файлов:
типизированные файлы (задаются предложением File of ...);
текстовые файлы (определяются типом TextFile);
нетипизированные файлы (определяются типом File).
В наших примерах f1, F4 и F5 - типизированные файлы, F2 - текстовый файл, F3 - нетипизированный файл. Вид файла, вообще говоря, определяет способ хранения в нем информации. Однако в Object Pascal нет средств контроля вида ранее созданных файлов. При объявлении уже существующих файлов программист должен сам следить за соответствием вида объявления характеру хранящихся в файле данных.
В этом разделе :
8 Доступ к файлам Файлы становятся доступны программе только после выполнения особой процедуры открытия файла.
8 Процедуры и функции для работы с файлами Ниже описываются процедуры и функции, которые можно использовать с файлами любого вида. Специфика работы с типизированными, текстовыми и нетипизированными файлами рассматривается в следующих разделах.
8 Текстовые файлы Текстовые файлы связываются с файловыми переменными, принадлежащими к стандартному типу TextFiie. Текстовые файлы предназначены для хранения текстовой информации. Именно в такого типа файлах хранятся, например, исходные тексты программ. Компоненты (записи) текстового файла могут иметь переменную длину, что существенно влияет на характер работы с ними.
8 Типизированные файлы Длина любого компонента типизированного файла строго постоянна, что дает возможность организовать прямой доступ к каждому из них (т. е. доступ к компоненту по его порядковому номеру).
8 Нетипизированные файлы Нетипизированные файлы объявляются как файловые переменные типа File и отличаются тем, что для них не указан тип компонентов.
8 Средства Windows для работы с файлами Операционная система Windows имеет собственные средства работы с файлами, которые становятся доступны программе Delphi после ссылки на модуль Windows.
8 Отображение файлов в память Для работы с файлом динамической подкачки страниц виртуальной памяти в Windows 32 используется механизм отображения файлов в адресное пространство программы.
8 Объектная модель работы с файлами В Delphi используется абстрактный класс TStream (поток данных), который является основой для работы с файлами как с объектами. В случае объектов совершенно не важно, что именно является носителем информации - дисковый ли файл, ленточный носитель или оперативная память.
| |