Читайте также: |
|
Информация в текстовых файлах хранится в виде последовательности символов. На самом деле с текстовыми файлами мы работали уже с самого начала,не упоминая об этом явно. Есть стандартные файлы ввода и вывода. Они связаны с клавиатурой и дисплеем. Имена этих файлов в системе Турбо Паскаль (файловые переменные) Input и Output, а их имя в операционной системе DOS – Соn (консоль).
Таким образом, при записи операторов Read или Write фактически осуществляется чтение из стандартного файла ввода с клавиатуры или запись в стандартный файл вывода, связанный с дисплеем. Правда,вы можете возразить, что почти всегда мы вводили и выводили цифровую информацию, а здесь идет речь о текстовом файле. Оказывается, при чтении и записи чисел в такой файл (в частности, и в Input, и в Output) их преобразование в строковый тип выполняется автоматически.
Одно из преимуществ текстовых файлов является то, что их содержимое легко просматривать, поскольку оно представлено в кодах ASCII. Таким образом, текстовый файл – это совокупность строк переменной длины. К любому элементу каждой строки возможен лишь последовательный доступ, начиная с первой.
При создании текстового файла в конце каждой строки генерируется код конца строки – EOLN (end of line), а в конце файла – код конца файла EOF (end of file). Эти коды можно поместить в файл, либо нажимая в конце каждой строки и конце файла клавишу ENTER, либо при помощи набора символов #10#13 (EOLN) и Ctrl+z (EOF).
Переменная файлового типа, заменяющая полное имя файла, задается следующим образам:
var <список имен переменных>: text;
Подготовка файла только для чтения информации осуществляется с помощью стандартной процедуры
Reset (<файловая переменная>);
При этом указатель устанавливается на первую компоненту. Здесь файловая переменная процедурой Assing связанна ранее с уже существующим файлом.
Важно, что с каждым файлом в конкретный момент времени можно работать или в режиме чтения, или в режиме записи. Одновременно и читать, и записывать нельзя. Для того чтобы, например, записать в файл, открытый для чтения, необходимо закончить работу с ним в этом режиме, а затем начать работу с этим же файлом в режиме записи.
Подготовка файла только для записи информации осуществляется с помощью стандартной процедуры
Rewrite (<файловая переменная>);
При этом создается новый файл и специальный указатель-переменная принимает значение 0. Необходимо помнить, что при выполнении этой процедуры старый файл будет уничтожен и никакой информации при этом не будет выдано.
Для работы с текстовыми файлами существует процедура
Append (<файловая переменная>);
которая инициирует запись в ранее существующий текстовый файл для его расширения. При этом указатель файла устанавливается в его конец. Если текстовый файл ранее уже был открыт с помощью процедур Resrt или Rewrite, использование процедуры Append приведет к закрытию его вновь, но уже для добавления записей.
После завершения работы с файлом он должен быть закрыт, иначе вся записанная в нем информация будет потеряна. Закрывается файл процедурой
Close (<файловая переменная>);
При этом информация в файле сохраняется, и он регистрируется в каталоге. Затем файловая переменная может быть связана с другими внешними файлами. Кроме того, поскольку связь файла с файловой переменной сохраняется, его можно повторно открыть без дополнительного использования процедуры Assign
Чтение и запись в текстовый файл осуществляется хорошо знакомыми нам операторами Read и Write, в которых перед списком вводимых и выводимых переменных стоит файловая переменная.
Пример оформления работы с текстовым файлом:
var f: text;
s: string;
Begin
Assign (f,’A:\Data.txt’);
{ Файл сименем Data.txt находитсяна диске с логическимименем А}
Reset (f); { Файл открывается для чтения }
Readln (f,s); { Читаем одну строку из файла }
…
Close (f);
End.
Дата добавления: 2015-07-19; просмотров: 53 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Введение | | | Экспериментальный раздел работы. |