Namespaces
Variants

std::ios_base:: openmode

From cppreference.net
typedef /* implementation defined */ openmode ;
static constexpr openmode app = /* implementation defined */ ;

static constexpr openmode binary = /* implementation defined */ ;
static constexpr openmode in = /* implementation defined */ ;
static constexpr openmode out = /* implementation defined */ ;
static constexpr openmode trunc = /* implementation defined */ ;

static constexpr openmode ate = /* implementation defined */ ;
static constexpr openmode noreplace = /* implementation defined */ ;
(desde C++23)

Especifica los indicadores de apertura de archivo disponibles. Es un BitmaskType , las siguientes constantes están definidas:

Constante Explicación
app buscar al final del flujo antes de cada escritura
binary abrir en modo binario
in abrir para lectura
out abrir para escritura
trunc descartar el contenido del flujo al abrir
ate buscar al final del flujo inmediatamente después de abrir
noreplace (C++23) abrir en modo exclusivo

Ejemplo

#include <fstream>
#include <iostream>
#include <string>
int main()
{
    const char* fname = "unique_name.txt";
    // escribir a un objeto de flujo temporal
    std::fstream(fname, std::ios::out | std::ios::trunc) << "Hi";
    std::string s;
    std::fstream(fname, std::ios::in) >> s;
    std::cout << s << '\n';
}

Salida:

Hi

Véase también

abre un archivo y lo configura como la secuencia de caracteres asociada
(función miembro pública de std::basic_filebuf<CharT,Traits> )
construye un objeto basic_stringbuf
(función miembro pública de std::basic_stringbuf<CharT,Traits,Allocator> )