Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Файловый тип_лекция.doc
Скачиваний:
5
Добавлен:
01.03.2025
Размер:
106 Кб
Скачать
☆

Средства обработки файлов.

Для всех типов файлов минимальной единицей хранения информации в них является байт. Принципы работы с файлами едины, хотя и имеются различия в наборах команд для работы с разными файловыми типами. Для всех без исключения файлов необходимо предварительное связывание их логических обозна­чений (файловых переменных) с физическими файлами.

Файловые переменные, описанные в программе, не могут участвовать в операторах присваивания.

При использовании файловых переменных любого типа в качестве формальных параметров заголовков процедур и функций они всегда должны быть описаны как параметры-переменные (т.е. Varf:...).

Общие процедуры для работы с файлами

Рассмотренные ранее процедуры ввода-вывода данных Write(Ln) и Read(Ln) фактически использовались нами для уст­ройства 'CON'. Однако эти процедуры могут используются и для работы с любыми логическими файлами. Тогда необходимо до­полнить их описания:

Read(f, <список ввода>) ReadLn(f, <список ввода>) Write(f, <список вывода>) WriteLn(f, <список вывода>), где f— файловая переменная. (ReadLn(f, <список ввода>, WriteLn(f, <список вывода>)-выполняются только для текстовых файлов)

Далее приводится таблица стандартных процедур, приме­няемых к файлам любых типов.

Процедура или функция

Назначение

Assign(Varf; FileName: String);

Связывает файловую переменную/ с именем FileName физического файла

Reset(Varf)

Открывает файл с логическим именем/для чтения

ReWrite(Varf)

Открывает файл с логическим именем f для записи

Close(Varf)

Закрывает канал ввода-вывода файла с логическим именем f

Rename (Var f; NewName: String);

Переименовывает физический файл f в NewName (применима лишь к закрытым файлам)

Erase(Varf)

Удаляет (если это возможно) физи­ческий файл f с носителя информа­ции (удаляемый файл должен быть закрыт)

EOF (Varf): Boolean;

(End Of File) Возвращает True, если достигнут конец файла

Текстовые файлы

Дадим другое определение: текстовые файлы — это файлы, в которых:

1) информация представляется в текстовом виде посредст­вом символов в коде ASCII;

2) порции информации могут разделяться на строки. При­знаком конца строки служит символ #13 (код 13 — CR). Он может быть объединен с символом перевода строки #10 (код 10 — LF);

3) конец файла обозначается явно символом AZ (код 26);

4) при записи чисел, строк и логических значений они пре­образуются в символьный (текстовый) вид;

5) при чтении чисел и строк они автоматически преобразу­ются из текстового представления в машинное.

Если файл можно вывести на экран в текстовом режиме и прочитать его, то это — текст. Клавиатура посылает в компьютер "сплошной" текст-файл. Компьютер посылает на принтер текст-файл, даже если принтер рисует в графическом режиме.

Для текстовых файлов определена специальная процедура Append(Var f: Text). Она применима к уже существующим физи­ческим файлам и открывает их для дозаписи, т.е. файл не стирает­ся, как при вызове ReWrite, а подготавливается к дозаписи эле­мента в конец файла.

Функция EOLn(Var f: Text) возвращает True, если текущая позиция в файле — конец строки или конец файла.