Файловая переменная в Паскале - это любая переменная файлового типа. В Паскале имеются три класса файлов: типизированный файл, текстовый файл и не типизированный файл. Перед использованием файловой переменной она должна быть связана с внешним файлом с помощью вызова процедуры Аssign. Внешним файлом обычно является поименованный файл на диске, но он также может представлять собой устройство, например, клавиатуру или дисплей. Во внешних файлах сохраняется записанная в файл информация, или они служат источниками информации, которая считывается из файла.
Когда связь с внешним файлом установлена, для подготовки ее к операции ввода или вывода файловая переменная должна быть "открыта". Существующий файл можно открыть с помощью процедуры Reset, а новый файл можно создать и открыть с помощью процедуры Rewrite. Текстовые файлы, открытые с помощью процедуры Reset доступны только по чтению, а текстовые файлы, открытые с помощью процедуры Rewrite, доступны только по записи. Типизированные и нетипизированные файлы всегда допускают как чтение, так и запись,независимо от того были они открыты с помощью процедуры Reset или с помощью процедуры Rewrite.
Когда начинается выполнение программы, всегда автоматически открываются стандартные текстовые файловые переменные Input и Оutput (ввод и вывод). Input - это доступный только по чтению файл, связанный с клавиатурой, а Оutput - это доступный только по записи файл, связанный с дисплеем.
Любой файл, представляет собой линейную последовательность элементов, каждая из которых имеет сложный тип (или тип записи) файла. Каждый элемент файла имеет номер. Первый элемент файла считается нулевым элементом.
Обычно доступ к файлам организуется последовательно, то есть, когда элемент считывается с помощью стандартной процедуры Read или записывается с помощью стандартной процедуры Write, текущая позиция файла перемещается к следующему по порядку элементу файла. Однако к типизированным и нетипизированным файлам можно организовать прямой доступ с помощью стандартной процедуры Sееk, которая перемещает текущую позицию файла к заданному элементу. Для определения текущей позиции в файле и текущего размера файла можно использовать стандартные функции FileРоs и Filesize.
Когда программа завершает обработку файла, он должен закрываться с помощью стандартной процедуры Сlose. После полного закрытия файла связанный с ним внешний файл обновляется. Затем файловая переменная может быть связана с другим внешним файлом.
По умолчанию при всех обращениях к стандартным функциям и процедурам ввода-вывода автоматически производится проверка на наличие ошибок. При обнаружении ошибки программа прекращает работу и выводит на экран сообщение об ошибке.