
Шпаргалки на экзамен / Файловые типы и переменные
.docxФайловые типы и переменные. Текстовый файл. Пример работы с
внешним файлом в программе.
Файл - именованная область внешней памяти ПЭВМ (жесткого диска, гибкой дискеты, электронного "виртуального" диска), либо логическое устройство - потенциальный источник или приемник информации.
Любой файл имеет три характерных особенности:
-
Во-первых, у него есть имя, что дает возможность программе работать одновременно с несколькими файлами.
-
Во-вторых, он содержит компоненты одного типа. Типом компонентов может быть любой тип Турбо-Паскаля, кроме файлов. Иными словами, нельзя создать «файл файлов».
-
В-третьих, длина вновь создаваемого файла никак не оговаривается при его объявлении и ограничивается только емкостью устройств внешней памяти.
Файловый тип или переменную файлового типа можно задать одним из трех способов: < имя > = FILE OF <тип>; < имя > = ТЕХТ; < имя > = FILE; . Здесь < имя > - имя файлового типа или файловой переменной, FILE, OF, TЕХТ - кодовые слова (англ.: файл, из, текст), < тип > - любой тип Турбо-Паскаля, кроме файлов. Пример: Type Man=record Name: string; LastName: string; End; Men=file of Man; Var Staff: Men; Numbers: file of real; Book: Text; A_File: File;
В зависимости от способа объявления можно выделить три вида файлов: • типизированные (задаются предложением FILE OF ...), • текстовые (задаются предложением ТЕХТ), • нетипизированные (задаются предложением FILE).
Вид файла, вообще говоря, определяет способ хранения информации в файле. Однако в Паскале нет средств контроля вида ранее созданных файлов. При объявлении уже существующих файлов программист должен сам следить за соответствием вида объявления характеру файла.
2. Доступ к файлам
Любой Турбо-Паскалевой программе доступны два предварительно объявленных файла со стандартными файловыми переменными: INPUT - для чтения данных с клавиатуры и OUTPUT - для вывода на экран. Стандартный Паскаль требует обязательного упоминания этих файлов в заголовке программы. В Турбо-Паскале это необязательно, вот почему заголовок программы можно опускать.
Любые другие файлы, а также логические устройства становятся доступны программе только после выполнения особой процедуры открытия файла (логического устройства). Эта процедура заключается в связывании ранее объявленной файловой переменной с именем существующего или вновь создаваемого файла, а также в указании направления обмена информации: чтение из файла или запись в него.
Связывание файловой переменной с именем файла осуществляется обращением к встроенной процедуреASSIGN: ASSIGN(< ф.п. >, < имя файла или л.у. >); Здесь < ф.п. > - файловая переменная (правильный идентификатор, объявленный в программе как переменная файлового типа); < имя файла или л.у. > - текстовое выражение, содержащее имя файла или логическое устройство.
Пример: Assign(Book,’PascalLecture.txt’);
Если имя файла задается в виде пустой строки, например, ASSIGN(f, ‘’), то файловая переменная связывается со стандартным файлом INPUT или ОUТРUТ.