ВУЗ:
Составители:
Рубрика:
6
var f1: textfile; f2: file of integer; f3: file of char; f4: file;
Здесь f1 – текстовый файл , f2 и f3 – типизированные файлы, f4 – не-
типизированный файл .
3.3 Стандартные подпрограммы для доступа к файлам
Работа с файлами заключается в записи и считывании информа-
ции. Для того чтобы указать, с каким элементом будет производиться
очередная операция чтения или записи, существует понятие указателя
на доступный элемент файла . После каждого чтения или записи ука -
затель перемещается на следующий элемент файла .
Перед использованием файловой переменной она должна быть
связана с внешним файлом ( файлом на диске) с помощью вызова
процедуры
AssignFile(< файловая переменная>, < имя файла >);
здесь <файловая переменная> – имя переменной файлового типа , объ-
явленной в программе; <имя файла > – символьная строка , содержащая
имя файла . Если файл находится в одной папке с обрабатывающей
его программой, то достаточно указать только имя файла , в против-
ном случае надо указать полный путь к файлу , например:
′c:\files\z1.txt′
Когда связь с внешним файлом установлена, его можно открыть
для ввода или вывода информации. Существующий файл можно от-
крыть с помощью процедуры
Reset(<файловая переменная>);
Процедура reset открывает существующий внешний файл , имя ко-
торого было связано с файловой переменной. Если внешний файл с
указанным именем отсутствует , то возникает ошибка периода выпол-
нения программы. Если файл уже открыт, то он сначала закрывается ,
а затем открывается вновь. Файловый указатель устанавливается на
элемент файла с порядковым номером 0.
Текстовый файл , открытый процедурой reset, доступен только для
чтения . Для типизированных и нетипизированных файлов, открытых
процедурой reset, допускается выполнять операции чтения и записи в
файл .
Новый файл можно создать и открыть для записи с помощью
процедуры
Rewrite(<файловая переменная>);
Процедура rewrite создаёт новый файл , имя которого связано с
файловой переменной. Если файл с указанным именем уже существу -
ет , то он удаляется и на его месте создаётся новый пустой файл . Те-
кущая позиция в файле устанавливается на начало файла , т.е. указа -
тель будет указывать на элемент с порядковым номером 0.
Если процедура rewrite открывает текстовый файл , то он стано-
вится доступным только для записи. Для типизированных и нетипизи -
6 var f1: textfile; f2: file of integer; f3: file of char; f4: file; Зд есь f1 – т екст овый ф а йл, f2 и f3 – т ипизирова н н ые ф а йлы, f4 – н е- т ипизирова н н ый ф а йл. 3.3 С тандартные подпрограммы для досту па к ф айлам Ра б от а с ф а йла м и за клю ча ет ся в за писи и считыва н ии ин ф орм а - ции. Для т ого чтоб ы у ка за т ь, с ка ким э лем ен том б у д ет производ ит ься очеред н а я опера ция чтен ия или за писи, су щест ву ет пон я т ие у ка за т еля н а д ост у пн ый э лем ен т ф а йла . П осле ка ж д ого чт ен ия или за писи у ка - за т ель перем еща ет ся н а след у ю щий э лем ен т ф а йла . П еред использова н ием ф а йловой перем ен н ой он а д олж н а б ыт ь свя за н а с вн еш н им ф а йлом ( ф а йлом н а д иске) с пом ощью вызова процед у ры AssignFile(< ф а йлова я перем ен н а я >, < им я ф а йла >); зд есь <ф а йлова я перем ен н а я > – им я перем ен н ой ф а йлового т ипа , об ъ- я влен н ой в програ м м е; <им я ф а йла > – сим вольн а я ст рока , сод ерж а ща я им я ф а йла . Е сли ф а йл н а ход ится в од н ой па пке с об ра б а тыва ю щей его програ м м ой, то д ост а точн о у ка за т ь т олько им я ф а йла , в прот ив- н ом слу ча е н а д о у ка за т ь полн ый пу т ь к ф а йлу , н а прим ер: ′c:\files\z1.txt′ Когд а свя зь с вн еш н им ф а йлом у ст а н овлен а , его м ож н о от крыт ь д ля ввод а или вывод а ин ф орм а ции. Су щест ву ю щий ф а йл м ож н о от - крыт ь с пом ощью процед у ры Reset(<ф а йлова я перем ен н а я >); П роцед у ра reset открыва ет су щест ву ю щий вн еш н ий ф а йл, им я ко- т орого б ыло свя за н о с ф а йловой перем ен н ой. Е сли вн еш н ий ф а йл с у ка за н н ым им ен ем от су т ст ву ет , т о возн ика ет ош иб ка период а выпол- н ен ия програ м м ы. Е сли ф а йл у ж е от крыт , то он сн а ча ла за крыва ет ся , а за тем от крыва ется вн овь. Ф а йловый у ка за т ель у ст а н а влива ется н а э лем ен т ф а йла с поря д ковым н ом ером 0. Т екст овый ф а йл, от крыт ый процед у рой reset, д ост у пен т олько д ля чт ен ия . Для т ипизирова н н ых и н етипизирова н н ых ф а йлов, от крыт ых процед у рой reset, д опу ска ет ся выполн я т ь опера ции чт ен ия и за писи в ф а йл. Новый ф а йл м ож н о созд а ть и от крыт ь д ля за писи с пом ощью процед у ры Rewrite(<ф а йлова я перем ен н а я >); П роцед у ра rewrite созд а ёт н овый ф а йл, им я которого свя за н о с ф а йловой перем ен н ой. Е сли ф а йл с у ка за н н ым им ен ем у ж е су щест ву - ет , т о он у д а ля ет ся и н а его м ест е созд а ёт ся н овый пу ст ой ф а йл. Т е- ку ща я позиция в ф а йле у ст а н а влива ет ся н а н а ча ло ф а йла , т.е. у ка за - т ель б у д ет у ка зыва т ь н а э лем ен т с поря д ковым н ом ером 0. Е сли процед у ра rewrite от крыва ет т екст овый ф а йл, то он ста н о- вится д ост у пн ым только д ля за писи. Для типизирова н н ых и н етипизи-
Страницы
- « первая
- ‹ предыдущая
- …
- 4
- 5
- 6
- 7
- 8
- …
- следующая ›
- последняя »