Программирование в среде Delphi. Часть 3. Файлы. Садовская О.Б. - 7 стр.

UptoLike

Составители: 

7
рованных файлов, открытых процедурой rewrite, допускается выпол-
нять операции чтения и записи в файл .
Текстовый файл может быть открыт процедурой
Append(<файловая переменная>);
Процедура append открывает уже существующий внешний файл ,
связанный с файловой переменной, для добавления новой информа-
ции. Если файла с указанным именем не существует , то возникает
ошибка . Если файл уже открыт, то он сначала закрывается , а затем
открывается заново. Указатель будет указывать на конец файла . В
результате обращения к append текстовый файл становится доступным
только для записи.
Когда программа завершает обработку файла , он должен быть за -
крыт с помощью стандартной процедуры
CloseFile(<файловая переменная>);
Процедура closefile закрывает открытый файл . При этом обеспе-
чивается сохранение в файле всех новых записей и регистрация файла
в папке. Процедура closefile не разрывает связь файла с файловой пе-
ременной, поэтому файл можно открыть снова без повторного исполь-
зования процедуры assignfile.
Уничтожить файл f можно с помощью процедуры Erase(var f).
Переименовывает файл процедура Rename(var f; NewName : string).
Здесь NewName строка , содержащая новое имя файла . Перед вы-
полнением этих процедур необходимо закрыть файл .
3.4 Текстовые файлы
Текстовый файл представляет собой последовательность символов,
сгруппированных в строки произвольной длины, где каждая строка
заканчивается маркером конца строки EOLN (end of line), состоящим
из двух символов: CR=#13 и LF=#10. Заканчивается файл символом
конца файла EOF (end of file, код #26).
Чтение данных из произвольного текстового файла можно осуще-
ствить с помощью процедур read и readln. При этом в списке их па -
раметров первой должна стоять соответствующая файловая перемен -
ная. Например, процедура read(f, x, y, z); осуществляет чтение из
файла , связанного с файловой переменной f, значения переменных x, y,
z. Процедура readln(f, a); прочитает из файла , связанного с перемен -
ной f, значение переменной a и перейдёт в этом файле к следую-
щей строке.
Вывод данных в текстовый файл производится процедурами write
и writeln, у которых первой в списке параметров указана соответст -
вующая файловая переменная. Например, процедура write(f, s = , s)
осуществляет запись в файл , связанный с переменной f, символьной
строки s = и значения переменной s. Процедура writeln(f) запи-
шет в файл , связанный с переменной f, пустую строку .
                                           7
рова н н ых ф а йлов, от крытых процед у рой rewrite, д опу ска ет ся выпол-
н я т ь опера ции чтен ия и за писи в ф а йл.
       Т екст овый ф а йл м ож ет б ыт ь от крыт процед у рой
                         Append(<ф а йлова я перем ен н а я >);
       П роцед у ра append от крыва ет у ж е су щест ву ю щий вн еш н ий ф а йл,
свя за н н ый с ф а йловой перем ен н ой, д ля д об а влен ия н овой ин ф орм а -
ции. Если ф а йла с у ка за н н ым им ен ем н е су щест ву ет , т о возн ика ет
ош иб ка . Е сли ф а йл у ж е от крыт , то он сн а ча ла за крыва ет ся , а за т ем
от крыва ет ся за н ово. У ка за тель б у д ет у ка зыва т ь н а кон ец ф а йла . В
резу льт а т е об ра щен ия к append т екстовый ф а йл ст а н овит ся д ост у пн ым
т олько д ля за писи.
       Когд а програ м м а за верш а ет об ра б от ку ф а йла , он д олж ен б ыт ь за -
крыт с пом ощью ст а н д а рт н ой процед у ры
                        CloseFile(<ф а йлова я перем ен н а я >);
       П роцед у ра closefile за крыва ет от крытый ф а йл. П ри э том об еспе-
чива ет ся сохра н ен ие в ф а йле всех н овых за писей и регист ра ция ф а йла
в па пке. П роцед у ра closefile н е ра зрыва ет свя зь ф а йла с ф а йловой пе-
рем ен н ой, поэ том у ф а йл м ож н о от крыт ь сн ова б ез повт орн ого исполь-
зова н ия процед у ры assignfile.
       У н ичтож ит ь ф а йл f м ож н о с пом ощью процед у ры Erase(var f).
П ереим ен овыва ет ф а йл процед у ра Rename(var f; NewName : string).
Зд есь NewName – строка , сод ерж а ща я н овое им я ф а йла . П еред вы-
полн ен ием э т их процед у р н еоб ход им о за крыт ь ф а йл.


                             3.4 Т екстовые ф айлы
       Т екст овый ф а йл пред ст а вля ет соб ой послед ова т ельн ост ь сим волов,
сгру ппирова н н ых в строки произвольн ой д лин ы, гд е ка ж д а я ст рока
за ка н чива ется м а ркером кон ца ст роки – EOLN (end of line), сост оя щим
из д ву х сим волов: CR=#13 и LF=#10. За ка н чива ет ся ф а йл сим волом
кон ца ф а йла EOF (end of file, код #26).
       Ч тен ие д а н н ых из произвольн ого т екст ового ф а йла м ож н о осу ще-
ст вит ь с пом ощью процед у р read и readln. П ри э том в списке их па -
ра м етров первой д олж н а стоя т ь соот вет ст ву ю ща я ф а йлова я перем ен -
н а я . На прим ер, процед у ра read(f, x, y, z); осу щест вля ет чтен ие из
ф а йла , свя за н н ого с ф а йловой перем ен н ой f, зн а чен ия перем ен н ых x, y,
z. П роцед у ра readln(f, a); прочит а ет из ф а йла , свя за н н ого с перем ен -
н ой f, зн а чен ие перем ен н ой a и перейд ёт в э том ф а йле к след у ю -
щей ст роке.
       В ывод д а н н ых в т екст овый ф а йл производ ит ся процед у ра м и write
и writeln, у кот орых первой в списке па ра м етров у ка за н а соот вет ст -
ву ю ща я ф а йлова я перем ен н а я . На прим ер, процед у ра write(f, ′ s = ′, s)
осу щест вля ет за пись в ф а йл, свя за н н ый с перем ен н ой f, сим вольн ой
ст роки ′ s = ′ и зн а чен ия перем ен н ой s. П роцед у ра writeln(f) за пи-
ш ет в ф а йл, свя за н н ый с перем ен н ой f, пу ст у ю ст року .