std:: basic_ofstream
|
Definido en el encabezado
<fstream>
|
||
|
template
<
class
CharT,
|
||
La plantilla de clase
basic_ofstream
implementa operaciones de salida de alto nivel en flujos basados en archivos. Interconecta un búfer de flujo basado en archivos (
std::basic_filebuf
) con la interfaz de alto nivel de (
std::basic_ostream
).
Una implementación típica de
std::basic_ofstream
contiene solo un miembro de datos no derivado: una instancia de
std::
basic_filebuf
<
CharT, Traits
>
.
Diagrama de herencia
Se proporcionan varios typedefs para tipos de caracteres comunes:
|
Definido en el encabezado
<fstream>
|
|
| Tipo | Definición |
std::ofstream
|
std :: basic_ofstream < char > |
std::wofstream
|
std :: basic_ofstream < wchar_t > |
Contenidos |
Tipos de miembros
| Tipo de miembro | Definición |
char_type
|
CharT
|
traits_type
|
Traits
; el programa está mal formado si
Traits::char_type
no es
CharT
.
|
int_type
|
Traits::int_type
|
pos_type
|
Traits::pos_type
|
off_type
|
Traits::off_type
|
native_handle_type
(C++26)
|
tipo definido por la implementación
que es
TriviallyCopyable
y
semiregular
|
Funciones miembro
|
construye el flujo de archivo
(función miembro pública) |
|
|
(destructor)
[virtual]
(implicitly declared)
|
destruye el
basic_ofstream
y el búfer asociado, cierra el archivo
(función miembro pública virtual) |
|
(C++11)
|
mueve el flujo de archivo
(función miembro pública) |
|
(C++11)
|
intercambia dos flujos de archivo
(función miembro pública) |
|
devuelve el objeto de dispositivo de archivo subyacente
(función miembro pública) |
|
|
(C++26)
|
devuelve el manejador definido por la implementación subyacente
(función miembro pública) |
Operaciones de archivo |
|
|
verifica si el flujo tiene un archivo asociado
(función miembro pública) |
|
|
abre un archivo y lo asocia con el flujo
(función miembro pública) |
|
|
cierra el archivo asociado
(función miembro pública) |
|
Funciones no miembro
|
(C++11)
|
especializa el algoritmo
std::swap
(plantilla de función) |
Heredado de std:: basic_ostream
Funciones miembro
Salida formateada |
|
|
inserta datos formateados
(función miembro pública de
std::basic_ostream<CharT,Traits>
)
|
|
Salida sin formato |
|
|
inserta un carácter
(función miembro pública de
std::basic_ostream<CharT,Traits>
)
|
|
|
inserta bloques de caracteres
(función miembro pública de
std::basic_ostream<CharT,Traits>
)
|
|
Posicionamiento |
|
|
devuelve el indicador de posición de salida
(función miembro pública de
std::basic_ostream<CharT,Traits>
)
|
|
|
establece el indicador de posición de salida
(función miembro pública de
std::basic_ostream<CharT,Traits>
)
|
|
Misceláneos |
|
|
sincroniza con el dispositivo de almacenamiento subyacente
(función miembro pública de
std::basic_ostream<CharT,Traits>
)
|
|
Clases miembro
|
implementa la lógica básica para preparar el flujo para operaciones de salida
(clase miembro pública de
std::basic_ostream<CharT,Traits>
)
|
Heredado de std:: basic_ios
Tipos de miembro
| Tipo de miembro | Definición |
char_type
|
CharT
|
traits_type
|
Traits
|
int_type
|
Traits::int_type
|
pos_type
|
Traits::pos_type
|
off_type
|
Traits::off_type
|
Funciones miembro
Funciones de estado |
|
|
verifica que no ha ocurrido ningún error, es decir, las operaciones de E/S están disponibles
(función miembro pública de
std::basic_ios<CharT,Traits>
)
|
|
|
verifica si se ha alcanzado el fin de archivo
(función miembro pública de
std::basic_ios<CharT,Traits>
)
|
|
|
verifica si ha ocurrido un error
(función miembro pública de
std::basic_ios<CharT,Traits>
)
|
|
|
verifica si ha ocurrido un error irrecuperable
(función miembro pública de
std::basic_ios<CharT,Traits>
)
|
|
|
verifica si ha ocurrido un error (sinónimo de
fail()
)
(función miembro pública de
std::basic_ios<CharT,Traits>
)
|
|
verifica que no ha ocurrido ningún error (sinónimo de
!
fail()
)
(función miembro pública de
std::basic_ios<CharT,Traits>
)
|
|
|
devuelve las banderas de estado
(función miembro pública de
std::basic_ios<CharT,Traits>
)
|
|
|
establece las banderas de estado
(función miembro pública de
std::basic_ios<CharT,Traits>
)
|
|
|
modifica las banderas de estado
(función miembro pública de
std::basic_ios<CharT,Traits>
)
|
|
Formato |
|
|
copia información de formato
(función miembro pública de
std::basic_ios<CharT,Traits>
)
|
|
|
gestiona el carácter de relleno
(función miembro pública de
std::basic_ios<CharT,Traits>
)
|
|
Misceláneos |
|
|
gestiona la máscara de excepciones
(función miembro pública de
std::basic_ios<CharT,Traits>
)
|
|
|
establece la configuración regional
(función miembro pública de
std::basic_ios<CharT,Traits>
)
|
|
|
gestiona el búfer de flujo asociado
(función miembro pública de
std::basic_ios<CharT,Traits>
)
|
|
|
gestiona el flujo vinculado
(función miembro pública de
std::basic_ios<CharT,Traits>
)
|
|
|
reduce caracteres
(función miembro pública de
std::basic_ios<CharT,Traits>
)
|
|
|
amplía caracteres
(función miembro pública de
std::basic_ios<CharT,Traits>
)
|
|
Heredado de std:: ios_base
Funciones miembro
Formato |
|
|
gestiona flags de formato
(función miembro pública de
std::ios_base
)
|
|
|
establece flag de formato específico
(función miembro pública de
std::ios_base
)
|
|
|
limpia flag de formato específico
(función miembro pública de
std::ios_base
)
|
|
|
gestiona precisión decimal de operaciones de punto flotante
(función miembro pública de
std::ios_base
)
|
|
|
gestiona ancho de campo
(función miembro pública de
std::ios_base
)
|
|
Configuraciones regionales |
|
|
establece configuración regional
(función miembro pública de
std::ios_base
)
|
|
|
devuelve configuración regional actual
(función miembro pública de
std::ios_base
)
|
|
Arreglo extensible interno |
|
|
[static]
|
devuelve un entero único a nivel de programa seguro para usar como índice en
pword()
y
iword()
(función miembro estática pública de
std::ios_base
)
|
|
redimensiona el almacenamiento privado si es necesario y accede al elemento
long
en el índice dado
(función miembro pública de
std::ios_base
)
|
|
|
redimensiona el almacenamiento privado si es necesario y accede al elemento
void
*
en el índice dado
(función miembro pública de
std::ios_base
)
|
|
Misceláneos |
|
|
registra función de callback de eventos
(función miembro pública de
std::ios_base
)
|
|
|
[static]
|
establece si las bibliotecas de E/S de C++ y C son interoperables
(función miembro estática pública de
std::ios_base
)
|
Clases miembro |
|
|
excepción de flujo
(clase miembro pública de
std::ios_base
)
|
|
|
inicializa objetos de flujo estándar
(clase miembro pública de
std::ios_base
)
|
|
Tipos de miembros y constantes |
|||||||||||||||||||||||||||||||||||||||
| Tipo | Explicación | ||||||||||||||||||||||||||||||||||||||
|
tipo de modo de apertura de flujo
También se definen las siguientes constantes:
(typedef) |
|||||||||||||||||||||||||||||||||||||||
|
tipo de banderas de formato
También se definen las siguientes constantes:
(typedef) |
|||||||||||||||||||||||||||||||||||||||
|
tipo de estado del flujo
También se definen las siguientes constantes:
(typedef) |
|||||||||||||||||||||||||||||||||||||||
|
tipo de dirección de búsqueda
También se definen las siguientes constantes:
(typedef) |
|||||||||||||||||||||||||||||||||||||||
|
especifica el tipo de evento
(enum) |
|||||||||||||||||||||||||||||||||||||||
|
tipo de función de callback
(typedef) |
|||||||||||||||||||||||||||||||||||||||
Notas
| Macro de prueba de características | Valor | Estándar | Característica |
|---|---|---|---|
__cpp_lib_fstream_native_handle
|
202306L
|
(C++26) | Soporte para manejadores nativos |
Ejemplo
#include <fstream> #include <iostream> #include <string> int main() { std::string filename = "Test.b"; { std::ofstream ostrm(filename, std::ios::binary); double d = 3.14; ostrm.write(reinterpret_cast<char*>(&d), sizeof d); // binary output ostrm << 123 << "abc" << '\n'; // text output } // read back std::ifstream istrm(filename, std::ios::binary); double d; istrm.read(reinterpret_cast<char*>(&d), sizeof d); int n; std::string s; istrm >> n >> s; std::cout << " read back: " << d << ' ' << n << ' ' << s << '\n'; }
Salida:
read back: 3.14 123 abc