- •Курс «основы алгоритмизации и программирования»
- •Тема: «создание и преобразование файлов»
- •1. Понятие файла.
- •1.1. Типизированные файлы.
- •1.1.1. Определение файлового типа.
- •1.1.2. Процедуры и функции обработки файлов.
- •П р о ц е д у р ы
- •Основные логические устройства, которые используются в Турбо Паскале
- •Ф у н к ц и и
- •1.1.3. Файлы последовательного доступа.
- •1.2. Текстовые файлы.
- •Процедуры и функции обработки текстовых файлов
- •П р о ц е д у р ы
- •Ф у н к ц и и
- •1.4. Файлы произвольного доступа.
- •1.5. Нетипизированные файлы.
- •3. Индивидуальные задания.
- •Файлы последовательного доступа
- •Текстовые файлы
- •Файлы произвольного доступа
- •Контрольные вопросы
- •Тема: «создание и преобразование файлов»
- •- Страница 17 -
1.1.2. Процедуры и функции обработки файлов.
Для работы с файлами в Турбо Паскале существуют специальные процедуры и функции. Рассмотрим некоторые из них, при этом использованы следующие обозначения: – файловая переменная (переменная типаfile);name– строковое выражение;p– переменныетого же типа, что и элементы переменной;n– числовое выражение.
П р о ц е д у р ы
Assign (,name)– процедура связи файловой переменной с конкретным физическим файлом. Имя файла, которое является значениемname, присваивается переменной файлового типа. С момента выполнения этой процедуры все действия над этой переменной будут эквивалентны действиям над файлом, определяемым значениемname.
Строковое значение name, кроме имени файлов, может иметь смысл логического устройства, что позволяет задействовать в процессе решения задач стандартные аппаратные средства ЭВМ (клавиатура, экран,принтер и др.). Все они рассматриваются как потенциальные источники или приемники текстовой информации.
Основные логические устройства, которые используются в Турбо Паскале
МНЕМОНИКА |
АППАРАТНЫЕ СРЕДСТВА |
CON |
Клавиатура или экран терминала. |
PRN |
Печатающее устройство (принтер). |
LPT1, LPT2, LPT3 |
Принтеры, если их несколько. Имена PRN и LPT1 – синонимы. |
AUX |
Коммуникационный канал, который используется для связи ЭВМ с другими компьютерами. Как правило, ЭВМ имеет два коммуникационных канала с именами COM1 и COM2. Имена AUX и COM1 – синонимы. |
NUL |
«Пустое» устройство, которое используется при отладке и трактуется как приемник информации неограниченной емкости. |
Имеется возможность открытия логических устройств с помощью библиотечного модуля Printer, входящего в библиотекуTurbo.tpl, что позволяет использовать простое обращение к принтеру. Например, программа:
program print;
uses priter;
begin
writeln(lst, ‘Привет’)
end.
напечатает фразу «Привет» на принтере. При этом все операции по открытию логического устройства выполняются автоматически.
Rewrite ()– процедура создания нового файла на диске, имя которого предварительно определено в процедуреAssign. Если файл с таким именем уже существует, то происходит его открытие, а содержимое уничтожается.
Reset()– процедура открытия существующего файла и установки указателя в начало файла, при этом содержимое файла сохраняется.
Read(, p)– процедура чтения значений компонентов из файла.
Write(, p)– процедура записи значений компонентов в файл.
Close()– процедура закрытия файла. Выполнение процедуры обеспечивает закрытие файла. Если файл был открыт, не рекомендуется выходить из программы, предварительно не закрыв его.
Erase()– процедура уничтожения файла. Выполнение процедуры вызывает уничтожение содержимого файла. При этом файл должен быть предварительно открыт.
Rename(, NewName)– процедура переименования файла. Выполнение процедуры вызывает занесение в каталог диска (директорий) нового имени файла. Новое мя определяется значениемNewName.
Truncate()– процедура уничтожения компонентов файла начиная с места текущего положения указателя и подготовки файла для записи.
MkDir(Path)– процедура создания нового каталога, путь до которого указан параметромPath.
ChDir(Path)– процедура изменения текущей директории. Процедура устанавливает новый текущий каталог, путь к которому (включая, быть может, и имя устройства) находится в параметреPath.
GetDir(N, S)– процедура получения текущего каталога накопителя. В переменнуюSтипаstringзаписывается текущий каталог накопителя, номер которого указан параметромN. ПараметрNимеет следующие значения: 0 – текущий накопитель, 1 – накопительА:, 2 – накопительВ: и т.д.
RmDir(Path)– процедура удаления пустого каталога, путь до которого указан параметромPath.