Последовательность работы с файлами всех типов следующая:



1. описаниефайловой переменной соответствующего типа;

2. связывание (ассигнование) такой переменной с именем дискового файла (как правило указывается полное имя - путь и имя);

3. открытие/создание файла - выделение ресурса ОС для обмена информацией между дисковым файлом и программой. Файл может быть открыт как для чтения, так и для записи; для некоторых типов файлов возможно открытие одновременно для чтения и записи;

4. непосредственно обмен информацией - чтение/запись данных из/в файл. При этом возможны перемещения по файлу - изменение позиции чтения/записи;

5. закрытие файла - освобождение ресурса ОС.

Описание файловых переменных:

Синтаксис описания логических файлов:

<имя файловой переменной>:<тип Файловой переменной>

Типы файловых переменных:
- TextFile – текстовый файл;
- Fileof<тип> - типизированный файл;
- File – нетипизированный файл.

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

Стандартные подпрограммы для допуска к файлам:

a) Связывание: AssignFile(<файловая переменная>,<имя файла на внешнем носителе>);

b) Открытие:Rewrite(<файловая переменная>); 

Rewrite открывает:

текстовые файлы только для записи,
типизированные и нетипизированныедля чтения и записи.
Reset открывает:

- текстовые файлы открываются для чтения,

- типизированные и нетипизированныедля чтения и записи.

c) Обмен

Обмен производится процедурами Read и Write в типизированных и BlockRead и BlockWrite в нетипизированных файлах, начиная с указателя на текущий элемент.

d) Закрытие

Для завершения работы с файлом применяется процедура CloseFile(<файловая переменная>); файл закрывается, связь с файловой переменной не теряется.

35. Текстовый файл – это последовательность текстовых строк произвольной длины на внешнем носителе

Ввод данныхиз текстового файла производится процедурами read(f,x,y,z); и readln(f,x,y,z);

Вывод данныхиз текстового файла производится процедурами write(f,’x’,y); и writeln(f,’x’,y);

1. functionEof (var F: FileText): Boolean; True –есликонецфайла, false –еслинет.

2. functionEoln (var F: FileText): Boolean; True –есликонецстроки, else –еслинет.

3. functionSeekEof (var F: FileText): Boolean; True –есликонецфайла, false –еслинет, приэтомпробелы, знакитабуляции, маркерыконцастрокипропускаются.

4. functionSeekEoln (varF:FileText): Boolean; True –если конец строки в текстовом файле, false –если нет, при этом пробелы, знаки табуляции, маркеры конца строки пропускаются.

36. Типизированные файлы : Для работы с типизированными файлами применяются следующие процедуры и функции:

ProcedureSeek(varF; N:LongInt); перемещает указатель в типизированном файле, связанном с файловой переменной F к требуемому компоненту N (нумерация с нуля).

FunctionFilePos (varF):LongInt; - возвращает номер текущего компонента в файле F

FunctionFileSize (varF):Integer; - возвращает количество компонентов.

37. Нетипизированные данные:Основное назначение – обеспечение совместимости с любыми типами файлов ОС Windows.
Для связи файла с переменной используется процедура AssignFile

В процедурах Reset и Rewrite для нетипизированных файлов указывается дополнительно параметр RecSize, чтобы задать размер записи, использующейся при передаче файлов.
Procedure BlockRead (var F:file; varBuf; Count:integer; [varAmtTransferred:integer]);

F- файловая переменная,

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

count - размер этой переменной,

AmtTransferred –количество реально прочитанных блоков.

Procedure BlockWrite(var F:file; varBuf; Count:integer; [varAmtTransferred:integer]);-аналогичнаBlockRead.

38. Динамическая память и указатели:динамически распределяемая память (куча), т.е. память, выделяемая во время выполнения программы.
Динамическая переменная не указывается явно в описаниях переменных и к ней нельзя обратиться по имени. Доступ к таким переменным осуществляется с помощью указателей.


Дата добавления: 2018-05-12; просмотров: 463; Мы поможем в написании вашей работы!

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






Мы поможем в написании ваших работ!