Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Процедуры работы с текстовым файлом

Читайте также:
  1. Excel. Технология работы с формулами на примере обработки экзаменационной ведомости
  2. I. Задания для самостоятельной работы
  3. II. Время начала и окончания работы
  4. II. Выполнение дипломной работы
  5. II. Выполнение процедуры
  6. II. ЗАДАНИЯ К ВЫПОЛНЕНИЮ КОНТРОЛЬНОЙ РАБОТЫ
  7. II. Определение для каждого процесса изменения внутренней энергии, температуры, энтальпии, энтропии, а также работы процесса и количества теплоты, участвующей в процессе.

Перед началом работы с конкретным файлом надо связать с ним файловую переменную. Для этого используется специальная процедура Assign (Var f; Name: string). Здесь f – файловая переменная, а Name – имя файла. Если файл расположен не в текущем каталоге, то надо указывать его полное имя.

Пример.

Var f1, f2: text;

St: string;

Begin

Assign (f1; d: \a064\Dan.txt)

Write(‘Введите имя файла”);

Readln(St);

Assign (f2; St)

End.

Здесь описаны 2 файловые переменные f1 и f2. Далее в тексте программы файловая переменная f1 связывается с файлом Dan.txt, а f2 – с файлом, имя которого пользователь задаёт в текстовой строке St.

После связывания имени файловой переменной с именем файла следует открыть файл. Открытие текстового файла можно произвести двумя стандартными процедурами:

ü процедура Rewrite (f) создаёт новый физический файл с тем именем, которое связано с файловой переменной f. Если уже есть физический файл с таким именем, то на его месте создаётся новый пустой файл с таким же именем. Указатель текущей позиции устанавливается на его начало. Этот способ открытия используется, когда надо производить запись в файл;

ü процедура Reset (f) открывает уже существующий физический файл, связанный с файловой переменной f. Он будет открыт только для чтения. Если физический файл с таким именем отсутствует, то возникает ошибка.

ü процедура Append(f) открывает уже существующий файл и указатель текущей позиции устанавливается на конец файла. После такого открытия текстовый файл можно только дополнять информацией

Для работы с текстовыми файлами используются процедуры: Read и Readln для чтения из файла и Write и Writeln для записи в файл

Смысл их применения тот же, что и при работе с консолью и монитором. Наличие специальных разделителей в конце строк текстовых файлов позволяет использовать процедуры Readln и Writeln.. Общий вид данных процедур следующий:

Readln(var F: text; VI [,V2,...Vn]);

Writeln(var F: text; VI [,V2,...Vn]);

где V1...Vn переменные разных типов.

Т.е. по сравнению с уже привычным использованием этих процедур, в состав параметров входит файловая переменная.

При использовании этих процедур происходит перевод переменных, входящих в состав параметров в строку символов при записи в файл (Write и Writeln) и обратный перевод из строки символов в типы данных из списка ввода при чтении из файла (Read и Readln). Т.е. если NN - целое число, равное 123, а RR - вещественное число равное 0.45, то при выполнении процедуры Writeln(f, NN, RR) в текстовый файл будет записана строка символов:

123 0.45

При чтении из файла этой строки результат чтения будет зависеть от того, переменные какого типа будут использованы в процедуре Readln. Если будет переменная St определена как строка символов:

Var St: string;

то после выполнения процедуры Readln (f, St) переменная St примет значение: St = ‘123 0.45’. А если:

Var А: byte; R: real;

то после выполнения Readln (f, А, R) переменные примут значения: А=123, R=0.45.

При организации операций ввода-вывода используются специальные функции Eoln, Eof, SeekEoln, SeekEof.

Функция Eoln(var F: text) возвращает булевское значение True, если текущая файловая позиция находится на маркере конца строки или всего файла. Во всех других случаях значение функции будет False. Функция SeekEoln(var F: text) аналогична Eoln, отличие в том, что возвращает True, игнорируя пробелы и табуляции, которые находятся между маркером конца строки и текущей позиции.

Функция Eof(var F: text) возвращает булевское значение True, если указатель конца файла находится сразу за последним компонентом, и False — в противном случае.Функция SeekEoln(var F: text) аналогична Eof, но игнорирует пробелы и табуляции, которые находятся между маркером конца строки и текущей позиции.

Приложение 3


Дата добавления: 2015-07-11; просмотров: 106 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Блок схема программы| Клавиши и коды

mybiblioteka.su - 2015-2024 год. (0.006 сек.)