Compartir a través de


basic_filebuf::close

Cerrar un archivo.

basic_filebuf<Elem, Tr> *close( );

Valor devuelto

La función miembro devuelve un puntero NULL si el puntero de archivo es un puntero NULL.

Comentarios

llamadas fclose(fp) decerrar . Si la función devuelve un valor distinto de cero, la función devuelve un puntero NULL. De lo contrario, devuelve this para indicar que el archivo se cerró correctamente.

Para una secuencia elevado, si algunas inserciones han producido desde que la secuencia se abre, o desde la última llamada a streampos, la función Desbordamiento. También inserta cualquier secuencia necesaria para restaurar el estado inicial de la conversión, utilizando la facetafac  de conversión de archivos para llamar a fac.unshift según sea necesario. Cada elemento byte de char tipo generado y se escribe en la secuencia asociada designada por el puntero de archivo fp como si mediante llamadas sucesivas del formulario fputc(byte, fp). Si se produce un error en la llamada a fac.unshift o a cualquier escritura, la función no tiene éxito.

Ejemplo

El ejemplo siguiente supone dos archivos del directorio actual: basic_filebuf_close.txt (el contenido “están probando”) y iotest.txt (contenido es “ssss”).

// basic_filebuf_close.cpp
// compile with: /EHsc
#include <fstream>
#include <iostream>

int main() {
   using namespace std;
   ifstream file;
   basic_ifstream <wchar_t> wfile;
   char c;
   // Open and close with a basic_filebuf
   file.rdbuf()->open( "basic_filebuf_close.txt", ios::in );
   file >> c;
   cout << c << endl;
   file.rdbuf( )->close( );

   // Open/close directly
   file.open( "iotest.txt" );
   file >> c;
   cout << c << endl;
   file.close( );

   // open a file with a wide character name
   wfile.open( L"iotest.txt" );

   // Open and close a nonexistent with a basic_filebuf
   file.rdbuf()->open( "ziotest.txt", ios::in );
   cout << file.fail() << endl;
   file.rdbuf( )->close( );

   // Open/close directly
   file.open( "ziotest.txt" );
   cout << file.fail() << endl;
   file.close( );
}
  

Requisitos

fstream <deEncabezado: >

Espacio de nombres: std

Vea también

Referencia

basic_filebuf (Clase)

Programación con iostream

Convenciones de iostreams