К типизированным файлам относятся файлы строго определенного типа. Чаще всего это файлы, состоящие из записей. Они применяются для создания различных баз данных. Стандартное задание в программе такой файловой переменной осуществляется следующим образом:
var F : file of FileRec;
Так как длина любого компонента типизированного файла строго постоянна, это дает возможность организовать прямой доступ к любому компоненту по его порядковому номеру, поэтому типизированные файлы часто называют файлами прямого доступа.
Для работы с файлами прямого доступа дополнительно можно использовать следующие средства:
Truncate(var F)
Эта процедура уничтожает все компоненты файла F, начиная с места текущего положения файлового указателя.
FilePos(var F) : Longlnt
Эта функция возвращает для файла F текущую файловую позицию (номер записи, на которую она установлена) в виде значения типа Longlnt.
Эта функция возвращает размер файла (количество записей) в виде значения типа Longlnt.
Для пустого файла вызов FileSize возвращает значение 0. Обнаружение ошибок при обращении к внешним носителям для обеих функций производится через IOresult.
Для того чтобы очередная запись могла быть записана в конец типизированного файла, необходимо переместить текущую файловую позицию в конец файла. Когда создается новый файл, это происходит автоматически после формирования каждой очередной записи. Если файл уже создан и файловая позиция, установленная при помощи Seek, находится где-нибудь в начале файла (FilePos(F) < FileSize(F)), то в конец файла ее позволяет переместить вызов Seek(F, FileSize(F));
В каждом файле число логических и физических записей совпадает, а при позиционировании номер физической записи на единицу меньше номера логической записи.
Когда записи располагаются в неотсортированном порядке, поиск необходимо осуществлять последовательно по всему файлу. Такое расположение записей неудобно и требует значительных расходов ресурсов системы для поиска нужной записи. Любая программная система по манипулированию базами данных всегда имеет в своем составе средства упорядочения записей по ключу.