Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

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




 

Особое место в языке ПАСКАЛЬ занимают текстовые файлы, компоненты

которых имеют символьный тип. Для описания текстовых файлов в языке

определен стандартный тип Тext:

 

var TF1, TF2: Text;

 

Текстовые файлы представляют собой последовательность строк, а

строки - последовательность символов. Строки имеют переменную длину,

каждая строка завершается признаком конца строки.

С признаком конца строки связана функция EOLn(var T:Text):Boolean,

где Т - имя текстового файла. Эта функция принимает значение TRUE,

если достигнут конец строки, и значение FALSE, если конец строки не

достигнут.

Для операций над текстовыми файлами, кроме перечисленных, опреде-

лены также операторы обращения к процедурам:

 

ReadLn(T) - пропускает строку до начала следующей;

 

WriteLn(T) - завершает строку файла, в которую производится за-

пись, признаком конца строки и переходит к началу следующей.

Для работы с текстовыми файлами введена расширенная форма операто-

ров ввода и вывода. Оператор

 

Read(T,X1,X2,...XK)

 

эквивалентен группе операторов

 

begin

Read(T,X1);

Read(T,X2);

...........

Read(T,XK)

end;

 

Здесь Т - текстовый файл, а переменные Х1, Х2,...ХК могут быть ли-

бо переменными целого, действительного или символьного типа, либо

строкой. При чтении значений переменных из файла они преобразуются из

текстового представления в машинное.

Оператор

 

Write(T,X1,X2,...XK)

 

эквивалентен группе операторов

 

begin

Write(T,X1);

Write(T,X2);

...........

Write(T,XK)

end;

 

Здесь Т - также текстовый файл, но переменные Х1,Х2,...ХК могут

быть целого, действительного, символьного, логического типа или стро-

кой. При записи значений переменных в файл они преобразуются из внут-

реннего представления в текстовый.

К текстовым файлам относятся стандартные файлы INPUT, OUTPUT.

Рассмотренные ранее операторы ввода - вывода являются частным слу-

чаем операторов обмена с текстовыми файлами, когда используются стан-

дартные файлы ввода - вывода INPUT, OUTPUT.

Работа с этими файлами имеет особенности:

-имена этих файлов в списках ввода - вывода не указываются;

-применение процедур Reset, Rewrite и Close к стандартным файлам

ввода - вывода запрещено;

-для работы с файлами INPUT, OUTPUT введена разновидность функции

EOLn без параметров.

TURBO PASCAL вводит дополнительные процедуры и функции, применимые

только к текстовым файлам, это SetTextBuf, Append, Flush, SeekEOLn,

SeekEOF.

Процедура SetTextBuf(var f: Text; var Buf; BufSize: Word) служит

для увеличения или уменьшения буфера ввода - вывода текстового файла

f. Значение размера буфера для текстовых файлов по умолчанию равно

128 байтам. Увеличение размера буфера сокращает количество обращений

к диску. Рекомендуется изменять разиер буфера до открытия файла. Бу-

фер файла начнется с первого байта переменной Buf. Размер буфера за-

дается в необязательном параметре BufSize, а если этот параметр от-

сутствует, размер буфера определяется длиной переменной Buf.

Процедура Append(var f: Text) служит для специального открытия

выходных файлов. Она применима к уже существующим физическим файлам и

открывает из для дозаписи в конец файла.

Процедура Flush(var f: Text) применяется к открытым выходным

файлам. Она принудительно записывает данные из буфера в файл незави-

симо от степени его заполнения.

Функция SeekEOLn(var f: Text): Boolean возвращает значение True,

если до конца строки остались только пробелы.

Функция SeekEOF(var f: Text): Boolean возвращает значение True,

если до конца файла остались строки, заполненные пробелами.

 

 




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


Дата добавления: 2014-01-07; Просмотров: 239; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.