Файлы в Паскале

Я работаю в среде Lazarus. Если вы используете иную среду для разработки на Паскаль, то и в ней все примеры данной статьи будут работать.

Виды файлов в Паскале

Файлы в Паскале представлены тремя видами:

типизированные;
нетипизированные;
текстовые.

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

Как следует из названия, в таких файлах хранятся тексты, а тексты составлены из строк. Пример работы с текстовым файлом в Pascal. Создадим на диске С текстовый файл с именем sbp.txt с помощью Блокнота. Внесём туда три строки:

Red
Yellow
Green

Итак, у нас есть текстовый файл sbp.txt, а в нем три слова на трёх строках: Файлы в Паскале

Сделаем в Pascal программу, которая считает содержимое нашего файла и выведет его на экран:

Получаем: Файлы в Паскале

В строке

sbpFile: Text;

создана переменная для работы с текстовым файлом. Связываем эту переменную с текстовым файлом sbpFile.txt:

Assign(sbpFile, ‘C:sbpFile.txt’);

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

Reset(sbpFile);

В цикле считываем из файла строки:

ReadLn(sbpFile, strokaArr[inn]);

Закрываем файл:

Close(sbpFile);

Теперь поставим задачу дописать несколько строк в имеющийся файл sbpFile.txt:

Получаем: Файлы в Паскале

В этом примере мы строкой

Append(sbpFile);

открыли файл для того, чтобы дописать в конец файла новую информацию. Старая информация при этом сохраняется.

В цикле добавляем новые строки в файл:

WriteLn(sbpFile, strokaArr[inn]);

Ещё рассмотрим задачу создания нового файла и записи в него. Программно создадим новый текстовый файл sbpFile.txt и сохраним в нём несколько строк. Если до начала работы файл sbpFile.txt не существует, он будет создан, а если он уже существует, то он будет стёрт, далее будет создан новый файл sbpFile.txt:

Получаем: Файлы в Паскале

До начала работы этого примера у нас имелся файл sbpFile.txt на диске С. Наша программа в строке

ReWrite(sbpFile);

удалила имеющийся файл и создала новый с тем же именем. Если бы файл sbpFile.txt не существовал к моменту начала работы примера, то он был бы создан. В цикле загружаем строки в файл:

WriteLn(sbpFile, strokaArr[inn]);

А что такое «Rojo», «Amarillo», «Verde»? Это испанские слова, которые означают «красный», «желтый», «зеленый».