Типизирани Pascal файлове

е функция на Pascal, чиято стойност е текущата позиция на показалеца:

е процедура на Pascal, която премества указателя към файловия компонент с номер n:

Така процедурата seek( ,0) ще настрои указателя към началото на файла, а процедурата seek( , FileSize( )) ще настрои указателя към знака за край на файла.

Pascal текстови файлове

Текстовите файлове са предназначени да съхраняват текстова информация. Именно в такива файлове се съхраняват например изходните текстове на програмите. Компонентите на текстовите файлове могат да бъдат с променлива дължина, което значително влияе върху естеството на работата с тях. Достъпът до всеки ред на текстовия файл на Pascal е възможен само последователно, започвайки от първия. Процедурите за присвояване, нулиране, пренаписване, четене, запис и функцията eof се прилагат за текстови файлове. Процедурите и функциите seek, filepos, filesize не се отнасят за тях. При създаване на текстов файл в края на всеки запис (ред) се поставя специален знак EOLN (край на ред). За да се определи дали краят на низ е достигнат, има булева функция със същото име, EOLN(), която оценява като истина, ако краят на низа е достигнат.

Формата на достъп до процедурите за запис и четене за текстови и въведени файлове е една и съща, но тяхното използване е коренно различно.

В допълнение към процедурите за четене и запис, при работа с текстови файлове се използват техните разновидности readln и writeln. Разликата е, че процедурата writeln, след като напише дадения списък, записва специален маркер за край на реда във файла. Този знак се възприема като преход към нов ред. Процедурата readln, след като прочете дадения списък, търси във файла терминатор на следващия ред и се подготвя за четене от началото на следващия ред.

Пример 1. Създайте прост текстов файл с име WORK.TXT:

Присвояване(F, 'WORK.TXT');

Write(F, 'Обикновен текстов файл');

Пример 2.Да предположим, че трябва да генерираме текстов файл с помощта на Pascal и след това да пренапишем от този файл във втория само онези редове, които започват с буквата "A" или "a".

Обяснения: ще ни трябват две файлови променливи f1 и f2, тъй като и двата файла са текстови, типът на променливите ще бъде текст. Задачата е разделена на два етапа: първият е формирането на първия файл; вторият чете първия файл и генерира втория.

За да завършим решението на задачата, има смисъл да добавим още една част, която не е изрично посочена в задачата - показване на съдържанието на втория файл на екрана.