- •Оглавление
- •Виды данных
- •Программирование линейных алгоритмов
- •Программирование разветвляющихся алгоритмов
- •Программирование циклических алгоритмов
- •Описание и использование типа массив
- •Ввод и вывод массивов
- •Процедуры и функции для работы со строками
- •Описание и использование данных строкового типа
- •Операции над строками
- •Описание и использование процедур и функций
- •Функции
- •Формальные и фактические параметры
- •Описание и использование типа запись
- •Описание и использование множеств
- •Файловый тип данных. Описание и использование типизированных файлов
- •Описание и использование текстовых файлов
- •Модуль пользователя
- •Объектно-ориентированное программирование. Классы. Основные понятия
- •Основные понятия
- •Инкапсуляция
- •Наследование
- •Полиморфизм
- •Составляющие класса Поля
- •Свойства
- •Программные файлы. Файл проекта. Файл формы
- •Система программирования Delphi
- •Основные окна Delphi
- •Литература
Описание и использование текстовых файлов
Текстовый файл представляет собой совокупность символов, разделенных на строки, причем каждая строка заканчивается признаком конца строки. Доступ к каждой строке возможен лишь последовательно, начиная с первой. Текстовый файл описывается следующим образом: type имя типа=text; {в Object Pascal: имя типа=textfile}
var имя переменной: имя типа;
или
var имя переменной: text;
Например: var f:text;
Существуют две стандартные файловые переменные для текстовых файлов: Input и Output. Файловая переменная Input по умолчанию связана с клавиатурой, а Output – с экраном дисплея. Эти устройства автоматически открываются при запуске программы, т.е выполняются процедуры: assign(Input,’’); reset(Input); assign(Output,’’); rewrite(Output);
Они автоматически закрываются после работы программы. Если при вводе или выводе из текстовых файлов не указана файловая переменная, по умолчанию используется соответственно Input или Output.
Процедуры и функции для текстовых файлов
Текстовые файлы становятся доступны программе только после связывания файловой переменной с именем существующего или вновь создаваемого файла, а также указания направления обмена информацией: чтение из файла или запись в него. Файловая переменная связывается с файлом на диске с помощью процедуры:
assign(файловая переменная, имя файла);
{в Object Pascal: asssgnfile(файловая переменная, имя файла);}
имя файла – строковое выражение, значение которого есть имя файла, записанное в соответствии с правилами MS DOS.
Например: assign(f, ‘d:\ped\a.txt’);
Процедура reset(файловая переменная) открывает существующий файл, с которым связана файловая переменная, и указатель файла указывает на его начало.
Например: reset(f);
Процедура rewrite(файловая переменная) открывает новый пустой файл, с которым связана файловая переменная, и указатель файла указывает на его начало.
Например: rewrite(f);
Процедура append(файловая переменная) открывает существующий файл, с которым связана файловая переменная, и указатель файла устанавливается в конец файла.
Например: append(f);
Процедура close(файловая переменная) закрывает файл на диске, с которым связана файловая переменная. Например: close(f);
В Object Pascal используется closefile(файловая переменная).
Процедура read(файловая переменная, список переменных) читает значения для переменных списка из файла, с которым связана файловая переменная. Переменные в списке могут быть целого, вещественного, символьного типа и типа string. При вводе значений целого и вещественного типа автоматически происходит преобразование типа. Отдельные числа в текстовом файле должны отделяться друг от друга пробелом, символом табуляции (Tab) или признаком конца строки (Enter). При вводе символа из файла читается один символ. При вводе значений типа string из файла читается необходимое число символов в пределах одной строки (до признака конца строки), при этом признак конца строки не читается. Например: read(f,a);
Процедура readln(файловая переменная, список переменных) читает значения для переменных списка, включая признак конца строки, из файла, с которым связана файловая переменная. Например: readln(f,a);
Процедура write(файловая переменная, список выражений) записывает значения выражений списка в файл, с которым связана файловая переменная. Выражения в списке могут быть целого, вещественного, логического, символьного типа и типа string. При выводе чисел происходит их автоматическая перекодировка в символьную форму, при выводе значений логических выражений выводятся слова true или false.
Например: write(f, 5); {в файл записывается символ '5'}
Процедура writeln(файловая переменная, список выражений) записывает значения выражений списка и ставит признак конца строки в файл, с которым связана файловая переменная.
Например: writeln(f,a);
Процедура erase(файловая переменная) уничтожает файл, с которым связана файловая переменная. Перед выполнением этой процедуры необходимо закрыть файл. Например: erase(f);
Процедура rename(файловая переменная, новое имя файла) переименовывает файл, с которым связана файловая переменная. Новое имя файла – строковое выражение, значением которого является имя файла в соответствии с правилами MS DOS. Перед выполнением этой процедуры необходимо закрыть файл. Например: rename(f,‘d:\ped\b.txt’);
Функция eof (файловая переменная) возвращает значение true, если указатель файла указывает на признак конца файла, и false – в противном случае. Например: writeln(eof(f));
Функция eoln (файловая переменная) возвращает значение true, если указатель файла указывает на признак конца строки или признак конца файла, и false – в противном случае.
