Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры по Паскалю.docx
Скачиваний:
5
Добавлен:
01.04.2025
Размер:
83.87 Кб
Скачать

36. Нетипизированные файлы. Описание нетипизированных файлов. Назначение нетипизированных файлов. Открытие и закрытие файлов.

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

В разделе var файловые переменные, предназначенные для работы с нетипизированными файлами, описываются следующим образом:

var g: file;

Никакая файловая переменная не может быть задана константой.

Назначение. Команда assign(f,'<имя_файла>'); служит для установления связи между файловой переменной f и именем того файла, за работу с которым эта переменная будет отвечать.

В зависимости от того, какие действия ваша программа собирается производить с открываемым файлом, возможно двоякое его открытие:

reset(f[,size]); - открытие файла для считывания из него информации и одновременно для записи в него (если такого файла не существует, попытка открытия вызовет ошибку). Эта же команда служит для возвращения указателя на начало файла;

rewrite(f[,size]); - открытие файла для записи в него информации; если такого файла не существует, он будет создан; если файл с таким именем уже есть, вся содержавшаяся в нем ранее информация исчезнет.

Необязательная переменная size может задать количество байтов, единовременно считываемых из нетипизированного файла или записываемых в него. По умолчанию размер таких "кусков" принимается равным 128 байт.

Закрываются нетипизированные файлы процедурой close(f), общей для всех типов файлов.

37. Нетипизированные файлы. Назначение нетипизированных файлов. Запись в файл. Считывание из файла. Поиск в нетипизированном файле.

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

В разделе var файловые переменные, предназначенные для работы с нетипизированными файлами, описываются следующим образом:

var g: file;

Никакая файловая переменная не может быть задана константой.

Назначение. Команда assign(f,'<имя_файла>'); служит для установления связи между файловой переменной f и именем того файла, за работу с которым эта переменная будет отвечать.

Запись и чтение Для осуществления записи в нетипизированный файл и считывания из него применяются две специальные процедуры

blockread(f:file; buf,count:word [;result:word]); - Процедура предназначена для считывания из файла f нескольких элементов разом (их количество указывается в переменной count, а длина устанавливается во время открытия файла) при помощи буфера обмена данными buf. Необязательная переменная result может хранить количество элементов, фактически считанных из файла.

blockwrite(f:file; buf,count:word [;result:word]); - Процедура производит запись данных в нетипизированный файл при помощи буфера buf.

Поиск. Функция filepos(f:file):longint сообщит текущее положение указателя в файле f.

Функция filesize(f:file):longint вычислит длину файла f

Процедура seek(f:file,n:longint) передвинет указатель в файле f на начало записи с номером N. Если окажется, что n больше фактической длины файла, то указатель будет передвинут и за реальный конец файла.

Процедура truncate(f:file) обрежет "хвост" файла f: все элементы начиная с текущего и до конца файла будут из него удалены.