basic_ofstream (Clase)

 

Para obtener la documentación más reciente de Visual Studio 2017 RC, consulte Documentación de Visual Studio 2017 RC.

Describe un objeto que controla la inserción de elementos y objetos codificados en un búfer de secuencia de la clase basic_filebuf< Elem, Tr>, con elementos de tipo Elem, cuyos rasgos de carácter están determinadas por la clase Tr.

template <class Elem, class Tr = char_traits<Elem>>  
class basic_ofstream : public basic_ostream<Elem, Tr>

Parámetros

Elem
Elemento básico del búfer del archivo.

Tr
Los rasgos del elemento básico del búfer del archivo (normalmente char_traits < Elem>).

Cuando la especialización wchar_t de basic_ofstream escribe en el archivo, si el archivo se abre en modo de texto, escribirá una secuencia MBCS. La representación interna usará un búfer de caracteres wchar_t.

El objeto almacena un objeto de clase basic_filebuf < Elem, Tr>.

En el siguiente ejemplo de código se muestra cómo crear un objeto basic_ofstream y escribir texto en él.

// basic_ofstream_class.cpp  
// compile with: /EHsc  
#include <fstream>  
  
using namespace std;  
  
int main(int argc, char **argv)  
{  
    ofstream ofs("ofstream.txt");  
    if (!ofs.bad())  
    {  
        ofs << "Writing to a basic_ofstream object..." << endl;  
        ofs.close();  
    }  
}  

Constructores

basic_ofstreamCrea un objeto del tipo basic_ofstream.

Funciones miembro

CerrarCierra un archivo.
is_openDetermina si un archivo está abierto.
abrirAbre un archivo.
rdbufDevuelve la dirección del búfer de secuencia almacenado.
intercambioIntercambia el contenido de este basic_ofstream con el contenido del basic_ofstream proporcionado.

Operadores

operador =Asigna el contenido de este objeto de secuencia. Se trata de una asignación de movimiento que implica un rvalue reference que no deja ninguna copia atrás.

Encabezado:<>>

Espacio de nombres: std

Crea un objeto del tipo basic_ofstream.

basic_ofstream();

explicit basic_ofstream(
    const char* _Filename,
    ios_base::openmode _Mode = ios_base::out,
    int _Prot = (int)ios_base::_Openprot);

explicit basic_ofstream(
    const wchar_t* _Filename,
    ios_base::openmode _Mode = ios_base::out,
    int _Prot = (int)ios_base::_Openprot);

basic_ofstream(
    basic_ofstream&& right);

Parámetros

_Filename
El nombre de archivo que desee abrir.

_Mode
Una de las enumeraciones en ios_base:: OpenMode.

_Prot
El archivo predeterminado, abra protección, equivalente a la shflag parámetro en _fsopen, _wfsopen.

right
La referencia rvalue a la basic_ofstream de objeto que se usa para inicializar este basic_ofstream objeto.

Comentarios

El primer constructor inicializa la clase base mediante una llamada a basic_ostream( sb), donde sb es el objeto almacenado de clase basic_filebuf< Elem, Tr>. También inicializa sb llamando a basic_filebuf < Elem, Tr>.

El segundo y tercer constructor inicializa la clase base mediante una llamada a basic_ostream( sb). También inicializa sb llamando a basic_filebuf < Elem, Tr> y, a continuación, sb. open( _Filename, _Mode | ios_base::out). Si esta última función devuelve un puntero nulo, el constructor llama a setstate( failbit).

El cuarto constructor es una función de copia. Inicializa el objeto con el contenido de right, trata como una referencia rvalue.

Ejemplo

En el siguiente ejemplo de código se muestra cómo crear un objeto basic_ofstream y escribir texto en él.

// basic_ofstream_ctor.cpp  
// compile with: /EHsc  
#include <fstream>  
  
using namespace std;  
  
int main(int argc, char **argv)  
{  
    ofstream ofs("C:\\ofstream.txt");  
    if (!ofs.bad())  
    {  
        ofs << "Writing to a basic_ofstream object..." << endl;  
        ofs.close();  
    }  
}  

Cierra un archivo.

void close();

Comentarios

Las llamadas a funciones miembro rdbuf->cerrar.

Ejemplo

Consulte basic_filebuf:: Close para obtener un ejemplo que utiliza cerrar.

Indica si un archivo está abierto.

bool is_open() const;

Valor devuelto

trueSi el archivo está abierto, false en caso contrario.

Comentarios

La función miembro devuelve rdbuf ** -> ** is_open.

Ejemplo

// basic_ofstream_is_open.cpp  
// compile with: /EHsc  
#include <fstream>  
#include <iostream>  
  
int main( )   
{  
   using namespace std;  
   ifstream file;  
   // Open and close with a basic_filebuf  
   file.rdbuf( )->open( "basic_ofstream_is_open.txt", ios::in );  
   file.close( );  
   if (file.is_open())  
      cout << "it's open" << endl;  
   else  
      cout << "it's closed" << endl;  
}  

Abre un archivo.

void open(
    const char* _Filename,
    ios_base::openmode _Mode = ios_base::out,
    int _Prot = (int)ios_base::_Openprot);

void open(
    const char* _Filename,
    ios_base::openmode _Mode);

void open(
    const wchar_t* _Filename,
    ios_base::openmode _Mode = ios_base::out,
    int _Prot = (int)ios_base::_Openprot);

void open(
    const wchar_t* _Filename,
    ios_base::openmode _Mode);

Parámetros

_Filename
El nombre de archivo que desee abrir.

_Mode
Una de las enumeraciones en ios_base:: OpenMode.

_Prot
El archivo predeterminado, abra protección, equivalente a la shflag parámetro en _fsopen, _wfsopen.

Comentarios

The member function calls rdbuf -> open(_ Filename, _Mode | ios_base::out). Si esta función devuelve un puntero nulo, la función llama a setstate( failbit).

Ejemplo

Consulte basic_filebuf:: Open para obtener un ejemplo que utiliza abrir.

Asigna el contenido de este objeto de secuencia. Se trata de una asignación de movimiento que implica un rvalue reference que no deja ninguna copia atrás.

basic_ofstream& operator=(basic_ofstream&& right);

Parámetros

right
Referencia a un valor R a un objeto basic_ofstream.

Valor devuelto

Devuelve *this.

Comentarios

El operador de miembro reemplaza el contenido del objeto por el contenido de right, que se trata como referencia rvalue.

Devuelve la dirección del búfer de secuencia almacenado.

basic_filebuf<Elem, Tr> *rdbuf() const

Valor devuelto

Devuelve la dirección del búfer de secuencia almacenado.

Ejemplo

Consulte basic_filebuf:: Close para obtener un ejemplo que usa rdbuf.

Intercambia el contenido de dos objetos basic_ofstream.

void swap(basic_ofstream& right);

Parámetros

right
Referencia lvalue a otro objeto basic_ofstream.

Comentarios

La función miembro intercambia el contenido de este objeto por el contenido de right.

basic_ostream (clase)
Seguridad para subprocesos en la biblioteca estándar de C++
iostream de programación
Convenciones de iostreams

Mostrar: