8.5. Приложение № 2. Описание функций потокового ввода-вывода в файл языка C++
КОНСТРУКТОР: |
ifstream |
ОПРЕДЕЛЕНА В: |
<iostream.h> <fstream.h> |
СИНТАКСИС: |
ifstream <поток>[(file)];
char *file;
|
НАЗНАЧЕНИЕ: |
Создаёт входной поток данных и ассоциирует его с файлом с именем file ; |
ОПИСАНИЕ: |
Вызов конструктора обязателен перед использованием переменной входного потока. Указание имени файла не обязательно - его потом можно задать функцией open ; |
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ: |
Нет; |
ПЕРЕНОСИМОСТЬ: |
|
КОНСТРУКТОР: |
ofstream |
ОПРЕДЕЛЕНА В: |
<iostream.h> <fstream.h> |
СИНТАКСИС: |
ofstream <поток>[(file)];
char *file;
|
НАЗНАЧЕНИЕ: |
Создаёт выходной поток данных и ассоциирует его с файлом с именем file ; |
ОПИСАНИЕ: |
Вызов конструктора обязателен перед использованием переменной выходного потока. Указание имени файла не обязательно - его потом можно задать функцией open ; |
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ: |
Нет; |
ПЕРЕНОСИМОСТЬ: |
|
ФУНКЦИЯ |
ios.open |
ОПРЕДЕЛЕНА В: |
<iostream.h> <fstream.h> |
СИНТАКСИС: |
void stream.open( file, open_mode, port = filebuf::openport );
char *file;
int open_mode = ios::open_mode;
int port;
|
НАЗНАЧЕНИЕ: |
Функция открывает файл с именем file в одном из указанных в open_mode режимов работы; |
ОПИСАНИЕ: |
|
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ: |
Нет; |
ПЕРЕНОСИМОСТЬ: |
|
РЕЖИМЫ ОТКРЫТИЯ ФАЙЛОВ ФУНКЦИЕЙ OPEN:
Режим |
Действие |
ios::in |
Открыть файл для ввода (для класса ifstream установлен по-умолчанию); |
ios::out |
Открыть файл для вывода (для класса ofstream установлен по-умолчанию); |
ios::ate
|
Открыть файл для записи в конец файла. При отсутствии файла создать его; |
ios::app |
Открыть файл для записи в конец файла; |
ios::trunc |
Пересоздать файл, если он уже существует; |
ios::nocreate |
Если файл не существует, то установить состояние ошибки; |
ios::noreplace |
Если файл уже существует, то установить состояние ошибки; |
ios::binary |
Открыть файл в двоичном режиме; |
ПРИМЕЧАНИЕ: Если необходимо указать более одного режима open_mode, режимы необходимо связывать с помощью побитовой операции ИЛИ (binary OR, |) ;
ФУНКЦИЯ |
ios.close |
ОПРЕДЕЛЕНА В: |
<iostream.h> <fstream.h> |
СИНТАКСИС: |
stream.close(); |
НАЗНАЧЕНИЕ: |
Функция закрывает открытый поток ввода или вывода; |
ОПИСАНИЕ: |
Это действие часто требуется в качестве предварительной операции при открытии нового файла для существующего потока; |
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ: |
Нет. |
ПЕРЕНОСИМОСТЬ: |
|
ФУНКЦИЯ |
ios.tellg |
ОПРЕДЕЛЕНА В: |
<iostream.h> <fstream.h> |
СИНТАКСИС: |
streampos stream.tellg(); |
НАЗНАЧЕНИЕ: |
Функция определяет текущую позицию файла, с которой будет производиться чтение в файл; |
ОПИСАНИЕ: |
|
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ: |
Смещение для операции чтения относительно начала файла; |
ПЕРЕНОСИМОСТЬ: |
|
ФУНКЦИЯ |
ios.tellp |
ОПРЕДЕЛЕНА В: |
<iostream.h> <fstream.h> |
СИНТАКСИС: |
streampos stream.tellp(); |
НАЗНАЧЕНИЕ: |
Функция определяет текущую позицию файла, с которой будет производиться запись в файл; |
ОПИСАНИЕ: |
|
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ: |
Смещение для операции записи относительно начала файла; |
ПЕРЕНОСИМОСТЬ: |
|
ФУНКЦИЯ |
ios.seekg |
ОПРЕДЕЛЕНА В: |
<iostream.h> <fstream.h> |
СИНТАКСИС: |
void stream.seekg( pos, dir = ios:: beg );
streampos pos;
seek_dir dir;
|
НАЗНАЧЕНИЕ: |
Функция переустанавливает указатель позиции файла на заданное число байтов в заданном направлении для операций чтения; |
ОПИСАНИЕ: |
Параметр pos задаёт смещение позиции чтения относительно данного направления, указанного параметром dir (см. ниже); |
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ: |
Нет; |
ПЕРЕНОСИМОСТЬ: |
|
ФУНКЦИЯ |
ios.seekp |
ОПРЕДЕЛЕНА В: |
<iostream.h> <fstream.h> |
СИНТАКСИС: |
void stream.seekp( pos, dir = ios:: beg );
streampos pos;
seek_dir dir;
|
НАЗНАЧЕНИЕ: |
Функция переустанавливает указатель позиции файла на заданное число байтов в заданном направлении для операций записи; |
ОПИСАНИЕ: |
Параметр pos задаёт смещение позиции записи относительно данного направления, указанного параметром dir (см. ниже); |
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ: |
Нет; |
ПЕРЕНОСИМОСТЬ: |
|
ЗНАЧЕНИЯ ПЕРЕМЕННЫХ ПЕРЕЧИСЛЕНИЯ seek_dir ДЛЯ ФУНКЦИЙ SEEKG И SEEKP:
ЗНАЧЕНИЕ |
ОПИСАНИЕ ТОЧКИ ОТСЧЁТА |
ios::beg |
относительно начала файла; |
ios::cur |
относительно текущей позиции; |
ios::end |
относительно конца файла; |