Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Прогр_алгор_в среде BUILDER C++_Ч_1.pdf
Скачиваний:
106
Добавлен:
11.05.2015
Размер:
784.02 Кб
Скачать

Вприведенном примере чтение проводилось последовательно. Узнать текущую позицию указателя можно с помощью функции ftell. Для произвольного

чтения данных можно перемещать указатель в произвольную позицию с помощью функции fseek.

fseek(F, set, nn)

где F- указатель на файл; set – число байт, на которое производится сдвиг от точки отсчета; nn – точка отсчета (0 – начало файла; 1 – текущая позиция; 2 – конец файла).

Наиболее полезна эта функция в файлах, состоящих из записей одного размера.

7.1.2.Работа с использованием дескрипторов

Вначале работы любой программы автоматически открываются три потока со своими дескрипторами (входной клавиатура, выходной экран и поток сообщений об ошибках). Программно можно открывать новые файлы с дескрипторами. Правила работы практически идентичны работе с двоичными файлами и различаются только синтаксисом.

7.1.3.Работа с файлами в стиле С++

ВC++ определены три класса файлового ввода/вывода: ifstream входные данные для чтения; ofstream выходные файлы для записи; fstream файлы для чтения и записи.

Очень удобно применять следующие операции: поместить в поток (<<) и извлечь из потока (>>).

Пример программы:

#include <fstream.h>

Memo1->Clear();

// Ввод данных в файл

ofstream lw ("a.text"); if (!lw)

{

Memo1->Lines->Add("Файл не удалось создать "); return;

}

int num=10; double k=5.67;

char s[20] = "ИНФОРМАЦИЯ";

lw << num << ' ' <<k << ' ' << s << endl; lw.close();

PDF created with pdfFactory Pro trial version www.pdffactory.com