basic_filebuf::close

Zamyka plik.

basic_filebuf<Elem, Tr> *close( );

Wartość zwracana

Element członkowski funkcja zwraca pusty wskaźnik, jeśli wskaźnik pliku jest pusty wskaźnik.

Uwagi

close calls fclose(fp).Jeśli ta funkcja zwraca wartość różną od zera, funkcja zwraca pusty wskaźnik.W przeciwnym wypadku zwraca to do wskazania, że plik został pomyślnie zamknięty.

Dla szerokiego strumienia, jeśli wszelkie wstawienia miały miejsce od czasu otwarcia strumienia lub od czasu ostatniego wywołania do streampos, wywołania funkcji przepełnienie.Również wstawia dowolną sekwencję potrzebne do przywrócenia stanu początkowego konwersji przy użyciu zestaw reguł konwersji pliku fac do wywołania fac.unshift w razie potrzeby.Każdy element bajt typu char ten sposób przedstawiony jest napisany w strumieniu skojarzone wyznaczone przez wskaźnik pliku fp tak jakby za pomocą kolejnych wywołań formularza fputc(bajt, fp).Jeśli wywołanie fac.unshift lub żadnego zapisu zakończy się niepowodzeniem, funkcja kończy się niepowodzeniem.

Przykład

Poniższy przykładowy zakłada dwa pliki w bieżącym katalogu: basic_filebuf_close.txt (zawartość jest "badania") i iotest.txt (zawartość jest "SSS").

// 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( );
}
  

Wymagania

Nagłówek:<fstream>

Przestrzeń nazw: std

Zobacz też

Informacje

basic_filebuf — Klasa

iostream Programming

Konwencje iostream