basic_filebuf::close
Zamyka plik.
basic_filebuf<Elem, Tr> *close( );
Wartość zwracana
Funkcja Członkowskich zwraca wskaźnik null, jeśli wskaźnik pliku jest wskaźnik zerowy.
Uwagi
close calls fclose(fp).Jeśli ta funkcja zwraca wartość niezerową, funkcja zwraca wskaźnik zerowy.W przeciwnym razie zwraca to , aby wskazać, że plik został zamknięty pomyślnie.
Dla strumienia szeroki, jeśli wystąpiły wszelkich wstawienia, ponieważ strumień został otwarty lub od czasu ostatniego wywołania streampos, wywołania funkcji przepełnienia.Wstawia również dowolną sekwencję potrzebne do przywrócenia stanu początkowego konwersji za pomocą aspekt konwersji pliku fac do wywołania fac.unshift w razie potrzeby.Każdy element bajt typu char produkowanych w ten sposób jest napisany w strumieniu skojarzone wyznaczone przez wskaźnik pliku fp jako Jeśli kolejnych wywołań formularza fputc(bajt, fp).Jeśli wywołanie fac.unshift lub żadnego zapisu zawiedzie, funkcja nie powiodła się.
Przykład
Następujące przykładowe 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>
Obszar nazw: std