1 ...8 9 10 12 13 14 ...64 Все операции над компонентными файлами производятся с помощью стандартных процедур.
Write(f,X1,X2,...XK)
Бестиповые файлы
Бестиповые файлы позволяют записывать на диск произвольные участки памяти ЭВМ и считывать их с диска в память. Описываются бестиповые файлы следующим образом:
var f: File;
Теперь перечислим процедуры и функции для работы с различными видами файлов.
1. Procedure Assign(var F; FileName: String);
Процедура AssignFile сопоставляет имя внешнего файла с файловой переменной.
F – файловая переменная любого файлового типа, FileName – выражение типа String или выражение типа PChar, если допускается расширенный синтаксис. Все дальнейшие операции с F производятся с внешним файлом.
Нельзя использовать процедуру с уже открытой файловой переменной.
2. Procedure Close(var F);
Процедура разрывает связь между файловой переменной и внешним дисковым файлом и закрывает файл.
F – файловая переменная любого файлового типа, открытая процедурами Reset, Rewrite или Append. Внешний файл, связанный с F, полностью модифицируется и затем закрывается, освобождая дескриптор файла для повторного использования.
Директива {SI+} позволяет обрабатывать ошибки во время выполнения программы, используя обработку исключительных ситуаций. При выключенной директиве {$1—} необходимо использовать IOResult для проверки ошибок ввода-вывода.
3. Function Eof(var F): Boolean;
{Типизированные или нетипизированные файлы}
Function Eof[(var F: Text)]: Boolean;
{Текстовые файлы}
Проверяет, является или нет текущая позиция файла концом файла.
Eof(F) возвращает True, если текущая позиция файла находится за последним символом файла или если файл пуст; иначе Eof (F) возвращает False.
Директива {SI+} позволяет обрабатывать ошибки во время выполнения программы, используя обработку исключительных ситуаций. При выключенной директиве {SI—}, необходимо использовать IOResult для проверки ошибок ввода-вывода.
4. Procedure Erase(var F);
Удаляет внешний файл, связанный с F.
F – файловая переменная любого файлового типа.
Перед вызовом процедуры Erase файл необходимо закрыть.
Директива {SI+} позволяет обрабатывать ошибки во время выполнения программы, используя обработку исключительных ситуаций. При выключенной директиве {SI—}, необходимо использовать IOResult для проверки ошибок ввода-вывода.
5. Function FileSize(var F): Integer;
Возвращает размер в байтах файла F Однако, если F – типизированный файл, FileSize возвратит число записей в файле. Перед использованием функции FileSize файл должен быть открыт. Если файл пуст, FileSize(F) возвращает нуль. F – переменная любого файлового типа.
6. Function FilePos(var F): Longlnt;
Возвращает текущую позицию файла внутри файла.
Перед использованием функции FilePos, файл должен быть открыт. Функция FilePos не используется с текстовыми файлами. F – переменная любого файлового типа, кроме типа Text.
7. Procedure Reset(var F [: File; RecSize: Word]);
Открывает существующий файл.
F – переменная любого файлового типа, связанного с внешним файлом с помощью AssignFile. RecSize – необязательное выражение, которое используется, если F – нетипизированный файл. Если F – нетипизированный файл, RecSize определяет размер записи, который используется при передаче данных. Если RecSize опущен, заданный по умолчанию размер записи равен 128 байтов.
Процедура Reset открывает существующий внешний файл, ассоциированный с файловой переменной F. Если внешнего файла с таким именем нет, возникает ошибка времени выполнения. Если файл, связанный с F, уже открыт, он сначала закрывается и затем вновь открывается. Текущая позиция файла устанавливается к началу файла.
8. Procedure Rewrite(var F: File [; Recsize: Word]);
Создает и открывает новый файл.
F – переменная любого файлового типа, связанного с внешним файлом с использованием AssignFile. RecSize – необязательное выражение, которое используется, если F – нетипизированный файл. Если F – нетипизированный файл, RecSize определяет размер записи, который используется при передаче данных. Если RecSize опущен, заданный по умолчанию размер записи равен 128 байтов.
Процедура Rewrite создает новый внешний файл с именем, связанным с F Если внешний файл с тем же самым именем уже существует, он удаляется, и создается новый пустой файл.
9. Procedure Seek(var F; N: Longlnt);
Перемещает текущую позицию файла к определенному компоненту. Можно использовать процедуру только с открытыми типизированными или нетипизированными файлами.
Текущая позиция файла F перемещается к номеру N. Номер первого компонента файла – 0.
Инструкция Seek(F, FileSize(F)) перемещает текущую позицию файла в конец файла.
Читать дальше
Конец ознакомительного отрывка
Купить книгу