Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Файлы без типа (нетипизированные файлы)


Доверь свою работу кандидату наук!
1500+ квалифицированных специалистов готовы вам помочь

End.

Close(Note)

End;

ReadLn(Note)

End;

Begin

While Not Eoln(Note) Do

K:=0;

Begin

While Not Eof(Note) Do

Read(Note,С); K:=K+1

If K>Max Then Max:=K;

WriteLn('Наибольшая строка имеет', Max,'знаков');

Здесь каждая строчка прочитывается посимвольно, при этом в переменной К работает счетчик числа символов в строке. В переменной Мах отбирается наибольшее значение счетчика.

Любой файл может быть представлен в виде последовательности символов кода ASCII. Турбо Паскаль позволяет рассматривать файл с любой организацией как бы состоящим из блоков по 128 байт.

Файлы без типа используются обычно при копировании файлов, когда не важна внутренняя структура записи файла. Если длина сегмента на диске 1024 байта, то количество блоков в группе равно 8 при длине блока 128 символов.

Обмен информацией происходит непосредственно между программой и файлом без использования буферной памяти. Адресация блоков производится по их номерам. Блоки в этом случае являются компонентами файла. Использование файлов без типа приводит к экономии памяти.

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

 

Формат описания

VAR < имя файла > : FILE;

 

BLOCKREAD(<имя файла>,<переменная>,<число компонент> [,<факт.число>]); – для чтения блока из файла.

BLOCKWRITE(<имя файла>,<переменная>,<число компонент> [,<факт.число>]); – для записи блока в файл.

Здесь <имя файла> – имя файла без типа; <переменная> – имя переменной для чтения или записи; <число компонент> – количество передаваемых компонент за один раз; <фактическое число> – количество фактически переданных записей длиной 128 байт.

Файл для блочного ввода-вывода описывается с типом FILE. Для файла без типа нельзя использовать процедуры READ и WRITE.



При открытии файла без типа можно указать длину записи файла в байтах. Она указывается вторым параметром при обращении к процедуре RESET или REWRITE, в качестве которого используется выражение типа WORD. Если длина записи не указана, она принимается равной 128 байтам.

Пример 7. Копирование данных из файла FROMF в файл TOF.

 

VAR FROMF, TOF: FILE;

NR, NWR: WORD;

NAME:STRING[12];

BUF: ARRAY[1..2048] OF CHAR;

Поможем в написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой
<== предыдущая лекция | следующая лекция ==>
Reset(Note); | Uses Crt;

Дата добавления: 2013-12-13; Просмотров: 239; Нарушение авторских прав?;


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



ПОИСК ПО САЙТУ:


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




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