Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
254
Добавлен:
02.05.2014
Размер:
3.54 Mб
Скачать

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

Текстовый файл можно рассматривать как последовательность символов, разбитую на строки длиной от 0 до 256 символов. Это файлы последовательного доступа. Структурной единицей текстовых файлов является строка. Данные в таких файлах хранятся в виде цепочки ASCIIкодов и могут обрабатываться любым текстовым редактором. Каждая строка завершается маркером конца строки. На практике такой маркер представляет собой последовательность из двух символов: перевод строкиchr(10)и возврат кареткиchr(13). Эти два символа задают стандартные действия по управлению текстовыми файлами.

Текстовые файлы описывается в разделе описания переменных:

Var

Файловая_переменная : TextFile;

Файловая переменная – это имя переменной, которое используется в программном коде для работы с файлом.

Открытие текстового файла

Перед тем, как записать данные в файл или прочитать данные из файла, необходимо сначала открыть этот файл. Открытие текстового файла на запись, чтение или дозапись осуществляется с помощью разных процедур. Но прежде, чем их использовать, необходимо во всех случаях присвоить файлу на магнитном носителе имя, т.е. поставить в соответствие файловой переменной имя файла на диске с помощью процедуры AssignFile:

AssignFile(файловая переменная, имя файла),

Здесь имя файла - любое выражение строкового типа, которое строится по правилам определения имен в операционной системе.

Например:

AssignFile(F,’c:\Student\Primer.Txt’);

Процедуры для открытия текстовых файлов

Обращение к процедуре

Действие

Rewrite(F)

Открывает (создает) новый файл. Имя файла предварительно определяется в процедуре AssignFile.Если на диске уже был файл с таким именем, то он уничтожается.

Reset(F)

Открывает уже существующий файл. Файл считывается последовательно. Если эта процедура применена к несуществующему файлу, то возникает ошибка ввода-вывода.

Append(F)

Открывает уже существующий файл для дозаписи. Запись производится в конец файла.

В таблице F– имя файловой переменной.

Обработка текстовых файлов

У текстовых файлов есть своя специфика. Специальные расширения стандартных процедур чтения (Read) и записи (Write), описанных ниже, разрешают работать со значениями несимвольного типа. Другими словами, последовательность символов автоматически преобразуется к значению того типа переменной, которая используется в файловых операциях.

Вызов Read(F,Ww),гдеWw- переменная типаword, осуществляет чтение из файлаFпоследовательности цифр, которая затем интерпретируется в число, значение которого и будет присвоено переменнойWw. В случае, если вместо последовательности цифр идет любая другая последовательность символов, использование такого оператора приводит к ошибке выполнения программы.

В таблице F– имя файловой переменной.V1,V2,…,Vn– переменные разных типов.

Обращение к процедуре

Действие

Read(F,V1[,V2,…,Vn]);

Считывает из дискового файла строки символов в переменные V1, V2,…,Vn.

Readln(F,V1[,V2,…,Vn]);

Выполняет те же действия, что и Read, и дополнительно – чтение до маркера конца строки и переход к новой строке

Readln(F) без списка переменных позволяет пропустить строку в файле и перейти на новую строку.

Write(F,V1[,V2,…,Vn]);

Записывает значения переменных V1,V2,…,Vn в файл на диске.

Writeln(F,V1[,V2,…,Vn]);

Выполняет те же действия, что и Write,но обеспечивает запись всех величин с обязательной установкой маркера конца строки в файл.

Writeln(F) без списка переменных. записывает в файл пустую строку.