fstream (fstream)

Перейти к навигации Перейти к поиску
Стандартная библиотека языка программирования C++

Ввод-вывод:

Многопоточность:

  • atomic (C++11)
  • condition_variable (C++11)
  • future (C++11)
  • mutex (C++11)
  • shared_mutex (C++14)
  • thread (C++11)

Прочие:

  • algorithm
  • bitset
  • chrono (C++11)
  • codecvt (C++11)
  • complex
  • exception
  • functional
  • initializer_list (C++11)
  • iterator
  • limits
  • locale
  • memory
  • new
  • numeric
  • random (C++11)
  • ratio (C++11)
  • regex (C++11)
  • stdexcept
  • string
  • system_error (C++11)
  • tuple (C++11)
  • typeindex (C++11)
  • typeinfo
  • type_traits (C++11)
  • utility
  • valarray
Стандартная библиотека шаблонов

Последовательные контейнеры:

Ассоциативные контейнеры:

Контейнеры-адаптеры:

Стандартная библиотека языка программирования Си

fstream (сокращение от «FileStream») — заголовочный файл из стандартной библиотеки C++, включающий набор классов, методов и функций, которые предоставляют интерфейс для чтения/записи данных из/в файл. Для манипуляции с данными файлов используются объекты, называемые потоками («stream»).

Функции, включенные в данный файл, позволяют производить чтение из файлов как побайтово, так и блоками, и записывать так же. В комплект включены все необходимые функции для управления последовательностью доступа к данным файлов, а также множество вспомогательных функций.

Общедоступные функции

[править | править код]

Это корневые функции библиотеки, не вошедшие ни в один из основных классов. Они используются довольно часто и могут быть применимы ко всем объектам потоков в каждом из классов.

  • rdbuf. Все объекты fstream могут быть ассоциированы с объектом буфера файлов filebuf. Чтобы сопоставить объект класса fstream с объектом буфера, используют функцию rdbuf (без аргументов). Объект буфера предоставляет намного большие возможности по управлению данными в файле, чем стандартные функции подклассов fstream.
  • open(). Этим методом можно открыть заданный файл, сопоставив его с одним из объектов потока[1]. В зависимости от передаваемых аргументов, файл может быть открыт для чтения, для записи (либо для полной, либо для добавления данных), как бинарный, или как текстовый файл.
  • is_open(). Функция, определяющая, открыт ли в данный момент файл, которому сопоставлен определенный объект потока. Возвращает булевское значение. Используется в основном для предотвращения ошибок доступа при попытке открыть уже использующийся файл. Без аргументов.
  • close(). Функция закрывает файл, то есть прекращает доступ к нему, таким образом освобождая его для других функций или программ.

Базовые классы

[править | править код]
ios_base «InputOutputStream_Base», базовый класс всей иерархии классов потоков. Содержит общие функции, типы и классы, в основном представляющие собой флаги (индикаторы). Эти флаги используются функциями подклассов fstream и могут быть определены с помощью функций ios_base.
ios «InputOutputStream», основной подкласс, вместе с ios_base, определяющий все остальные подклассы библиотеки потоков. Содержит функции-флаги форматирования и обработки ошибок, а также некоторые функции, унаследованные от ios_base.
ifstream «InputFileStream», организовывает чтение данных из файла. Класс, функции которого используются для чтения файлов.
ofstream «OutputFileStream», организовывает запись данных в файл. Класс, используемый для записи данных в файл.