Низкоуровневые методы работы с файлами
Операционная система Windows осуществляет работу с файлами при помощи дескрипторов – указателей на файл как на физическое устройство. В составе Delphi предусмотрен специальный набор функций для работы с файлами в стиле Windows (табл. 4.2).
Таблица 4.2. Функции, работающие с файлами в стиле Windows
Метод | Описание |
function FileCreate(const FileName: string): Integer; function FileOpen(const FileName: string; Mode: LongWord): Integer; function FileSeek(Handle, Offset, Origin: Integer): Integer; function FileRead(Handle: Integer; var Buffer; Count: Integer): Integer; function FileWrite(Handle: Integer; const Buffer; Count: Integer): Integer; function FileGetDate(Handle: Integer): Integer; function FileSetDate(Handle: Integer; Age: Integer): Integer; procedure FileClose(Handle: Integer); | Создает файл с именем FileName и возвращает указатель на него. Если в процессе создания произошла ошибка, то функция вернет –1. Для закрытия файла обязателен вызов метода FileClose(). Открывает файл FileName и возвращает указатель на него. Для закрытия файла обязателен вызов метода FileClose(). Файл открывается в режиме, определенном в параметре Mode (см. табл. 4.3). Позиционирует файл с дескриптором Handle в положение Offset. Порядок смещения определяется параметром Origin: 0 – Offset байт от начала файла; 1 – Offset байт от текущей позиции; 2 – Offset байт от конца файла. Читает Count байт в буфер Buffer из файла с дескриптором Handle. Используется совместно с FileOpen() или FileCreate(). Записывает Count байт из буфера Buffer в файл с дескриптором Handle. Дескриптор получают от функций FileOpen() или FileCreate(). Возвращает дату/время создания файла в формате операционной системы. Устанавливает время создания файла Age с дескриптором Handle. Время должно передаваться в формате операционной системы. Закрывает файл с дескриптором Handle. Используется совместно с функциями FileOpen() или FileCreate(). |
Перечисленные методы представляют собой надстройки над функциями Win32 API. По своему функциональному назначению они являются аналогами рассмотренных ранее функций и предназначены для работы с двоичными файлами.
Таблица 4.3. Режимы открытия файла
Режим | Значение | Описание |
fmOpenRead fmOpenWrite fmOpenReadWrite fmShareCompat fmShareExclusive fmShareDenyWrite fmShareDenyRead fmShareDenyNone | $0000; $0001; $0002; $0000; $0010; $0020; $0030; $0040; | Открыть только для чтения Открыть только для записи Открыть для чтения и записи Совместимость со старой моделью доступа к файлам Запретить другим читать файл и записывать в него Запретить другим запись в файл Запретить другим чтение файла Разрешить другим полный доступ |
Дата добавления: 2016-03-15; просмотров: 854;