Oharra
Orrialde honetara sartzeak baimena behar du. Saioa hasteko edo direktorioak aldatzen saia zaitezke.
Orrialde honetara sartzeak baimena behar du. Direktorioak aldatzen saia zaitezke.
Clase
Describe un objeto que controla la inserción de elementos y objetos codificados en un búfer de flujo de la clase basic_filebuf< Elem, Tr>, con elementos de tipo Elem, cuyos rasgos de caracteres están determinados por la clase Tr. Para obtener más información, vea basic_filebuf.
Sintaxis
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
Rasgos del elemento básico del búfer del archivo (normalmente char_traits<Elem>).
Comentarios
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>.
Ejemplo
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
| Constructor | Descripción |
|---|---|
basic_ofstream |
Crea un objeto de tipo basic_ofstream. |
Funciones miembro
| Función de miembro | Descripción |
|---|---|
close |
Cierra un archivo. |
is_open |
Determina si un archivo está abierto. |
open |
Abre un archivo. |
rdbuf |
Devuelve la dirección del búfer de secuencia almacenado. |
swap |
Intercambia el contenido de este basic_ofstream con el contenido del basic_ofstream proporcionado. |
Operadores
| Operador | Descripción |
|---|---|
operator= |
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. |
Requisitos
Encabezado: <fstream>
Espacio de nombres: std
basic_ofstream::basic_ofstream
Crea un objeto de 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
Nombre del archivo que se va a abrir.
_Mode
Una de las enumeraciones de ios_base::openmode.
_Prot
Protección predeterminada de apertura del archivo, equivalente al parámetro shflag de _fsopen, _wfsopen.
right
Referencia a un valor R al objeto basic_ofstream que se usa para inicializar este objeto basic_ofstream.
Comentarios
El primer constructor inicializa la clase base al llamar a basic_ostream(sb), donde sb es el objeto almacenado de clase basic_filebuf< Elem, Tr>. También inicializa sb al llamar a basic_filebuf<Elem, Tr>.
El segundo y el tercer constructor inicializan la clase base al llamar a basic_ostream( sb). También inicializa sb mediante una llamada a basic_filebuf<Elem, Tr> y, después sb.open( _Filename, _Mode | ios_base::out). Si esta última función devuelve un puntero setstate(failbit), el constructor llama a NULL.
El cuarto constructor es una función de copia. Inicializa el objeto con el contenido de right, tratado como una referencia a un valor R.
Para obtener más información, vea basic_ostream, open y setstate.
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();
}
}
basic_ofstream::close
Cierra un archivo.
void close();
Comentarios
La función miembro llama a rdbuf->close. Para obtener más información, vea rdbuf y close.
Ejemplo
Consulte basic_filebuf::close para ver un ejemplo en el que se usa close.
basic_ofstream::is_open
Indica si un archivo está abierto.
bool is_open() const;
Valor devuelto
true si el archivo está abierto; de lo contrario, false.
Comentarios
La función miembro devuelve rdbuf->is_open. Para obtener más información, vea rdbuf y 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;
}
basic_ofstream::open
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
Nombre del archivo que se va a abrir.
_Mode
Una de las enumeraciones de ios_base::openmode.
_Prot
Protección predeterminada de apertura del archivo, equivalente al parámetro shflag de _fsopen, _wfsopen.
Comentarios
La función miembro llama a rdbuf -> open(_ Filename, _Mode | ios_base::out). Si esa función devuelve un puntero NULL, la función llama a setstate(failbit).
Para obtener más información, vea rdbuf, open y setstate.
Ejemplo
Consulte basic_filebuf::open para ver un ejemplo en el que se usa open.
basic_ofstream::operator=
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.
basic_ofstream::rdbuf
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 ver un ejemplo en el que se usa rdbuf.
basic_ofstream::swap
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.
Consulte también
basic_ostream (clase)
Seguridad para subprocesos en la biblioteca estándar de C++
Programación de iostream
Convenciones de iostreams