Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Операции над файлами.






ТЕКСТОВЫЕ ФАЙЛЫ И ЦИКЛИЧЕСКОЕ ВЫПОЛНЕНИЕ

 

До настоящего времени были доступны только символьные переменные. Используя текстовые файлы, данные могут сохраняться вне зависимости от их размера. Работая с файлами можно сортировать текстовые строки любой длины.

 

 

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

 

Вводится новый тип данных CF Pascal, файл типа TEXT, он используется для хранения данных. Текстовые файлы могут хранить последовательности с любым количеством символов.

 

Новые идеи: файлы типа TEXT, использование файлов для хранения рабочих данных, REWRITE, RESET.

 

Операции над файлами.

 

INPUT и OUTPUT – стандартные идентификаторы именующие файлы которые можно читать и записывать; данные в этих файлах являются последовательностями символов.

В CF Pascal также есть переменные, данные которых являются последовательностями символов – файлы типа TEXT. Другое имя типа данных TEXT – FILE OF CHAR. Текстовые файлы могут быть созданы, туда можно записывать данные, считывать данные, они могут хранить несколько символов, чего не скажешь про переменные типа CHAR. Файлы описываются в разделе VAR c использованием стандартного слова TEXT. Например:

 

VAR

Ch: CHAR;

Chars: TEXT;

После того как переменная типа TEXT была создана, она должна быть приготовлена для записи с использованием выражения REWRITE, в данном случае:

REWRITE(Chars)

Или файл может быть приготовлен для чтения, возможно после записи данных, используя выражение RESET.

RESET(Chars)

Если для файла было выполнено выражение REWRITE и нет промежуточных выражений RESET, файл открыт для записи и выражения WRITE могут ссылаться на него, например:

WRITE(Chars, Ch, ‘#’);

WRITELN(Chars, Ch, Ch)

Если для файла было выполнено выражение RESET, без промежуточных выражений REWRITE, файл открыт для чтения и выражения READ могут ссылаться на него, например:

READ(Chars, Ch);

Чтение и запись файлов типа TEXT, объявленных в программе, во всех отношениях подобны чтению из INPUT и записи в OUTPUT. Значением файла открытого для чтения или записи может быть строка символов и курсор. Выражение REWRITE размещает курсор на первой позиции строки символов, где символы отсутствуют, аналогично OUTPUT после выполнения заголовка программы. Выражение RESET не изменяет данные файла и перемещает курсор в позицию первого символа, если таковой имеется, аналогично тому как инициализируется INPUT при выполнении заголовка программы.

OUTPUT всегда открыт для записи и может присутствовать в выражении WRITE. Выражения

WRITE(Ch)

и

WRITE(OUTPUT, Ch)

С точки зрения выполнения идентичны. Аналогично, INPUT всегда открыт для чтения и может быть использовано следующее выражение:

READ(Input, Ch)

 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2026 год. (0.404 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал