Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Beschreibt ein Objekt, das das Einfügen von Elementen und codierten Objekten in einen Datenstrompuffer der Klasse basic_filebuf< Elem, Tr>
steuert, mit Elementen vom Typ Elem
, deren Zeicheneigenschaften von der Klasse Tr
bestimmt werden. Weitere Informationen finden Sie unter basic_filebuf
.
Syntax
template <class Elem, class Tr = char_traits<Elem>>
class basic_ofstream : public basic_ostream<Elem, Tr>
Parameter
Elem
Das grundlegende Element des Dateipuffers.
Tr
Die Eigenschaften des grundlegenden Elements des Dateipuffers (in der Regel char_traits<Elem>
).
Hinweise
Wenn die wchar_t
Spezialisierung von basic_ofstream
Schreibvorgängen in die Datei erfolgt, schreibt sie eine MBCS-Sequenz, wenn die Datei im Textmodus geöffnet wird. Die interne Darstellung verwendet einen Puffer mit wchar_t
-Zeichen.
Das Objekt speichert ein Objekt der Klasse basic_filebuf< Elem, Tr>
.
Beispiel
Das folgende Beispiel zeigt, wie ein basic_ofstream
-Objekt erstellt und Text in dieses Objekt geschrieben wird.
// 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();
}
}
Konstruktoren
Konstruktor | Beschreibung |
---|---|
basic_ofstream |
Erstellt ein Objekt vom Typ basic_ofstream . |
Memberfunktionen
Memberfunktion | Beschreibung |
---|---|
close |
Schließt eine Datei. |
is_open |
Ermittelt, ob eine Datei geöffnet ist. |
open |
Öffnet eine Datei. |
rdbuf |
Gibt die Adresse des gespeicherten Streampuffers zurück. |
swap |
Tauscht den Inhalt dieses basic_ofstream -Objekts gegen den Inhalt des bereitgestellten basic_ofstream -Objekts aus. |
Operatoren
Operator | Beschreibung |
---|---|
operator= |
Weist den Inhalt dieses Streamobjekts zu. Dies ist eine Verschiebungsaufgabe, die eine rvalue reference Kopie nicht hinterlässt. |
Anforderungen
Header: <fstream>
Namespace:std
basic_ofstream::basic_ofstream
Erstellt ein Objekt vom Typ 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);
Parameter
_Filename
Der Name der zu öffnenden Datei.
_Mode
Eine der Enumerationen in ios_base::openmode
.
_Prot
Der Standardmäßige Dateiöffnungsschutz, der dem shflag
Parameter in _fsopen
, _wfsopen
entspricht.
right
Der rvalue-Verweis auf das basic_ofstream
-Objekt, das benutzt wird, um dieses basic_ofstream
-Objekt zu initialisieren.
Hinweise
Der erste Konstruktor initialisiert die Basisklasse durch Aufrufen basic_ostream(sb)
, wobei sb
das gespeicherte Objekt der Klasse basic_filebuf< Elem, Tr>
ist. Sie initialisiert sb
auch durch Aufrufen basic_filebuf
Elem
<von , . Tr
>
Die zweite und dritte Konstruktor initialisieren die Basisklasse durch Aufrufen.basic_ostream( sb)
Sie initialisiert sb
auch durch AufrufenElem
<Tr
basic_filebuf
> und dann .sb.open( _Filename, _Mode | ios_base::out)
Wenn die letztere Funktion einen NULL
Zeiger zurückgibt, ruft der Konstruktor auf setstate(failbit)
.
Der vierte Konstruktor ist eine Kopierfunktion. Er initialisiert das Objekt mit dem Inhalt von right
, das als rvalue-Verweis behandelt wird.
Weitere Informationen finden Sie unter basic_ostream
, open
und setstate
.
Beispiel
Das folgende Beispiel zeigt, wie ein basic_ofstream
-Objekt erstellt und Text in dieses Objekt geschrieben wird.
// 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
Schließt eine Datei.
void close();
Hinweise
Die Memberfunktion ruft auf rdbuf->close
. Weitere Informationen finden Sie unter rdbuf
und close
.
Beispiel
Ein Beispiel, das verwendet wird, close
finden Sie unter basic_filebuf::close
.
basic_ofstream::is_open
Gibt an, ob eine Datei geöffnet ist.
bool is_open() const;
Rückgabewert
true
, wenn die Datei geöffnet ist, andernfalls false
.
Hinweise
Die Memberfunktion gibt rdbuf->is_open
zurück. Weitere Informationen finden Sie unter rdbuf
und is_open
.
Beispiel
// 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
Öffnet eine Datei.
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);
Parameter
_Filename
Der Name der zu öffnenden Datei.
_Mode
Eine der Enumerationen in ios_base::openmode
.
_Prot
Der Standardmäßige Dateiöffnungsschutz, der dem shflag
Parameter in _fsopen
, _wfsopen
entspricht.
Hinweise
Die Memberfunktion ruft auf rdbuf -> open(_ Filename, _Mode | ios_base::out)
. Wenn diese Funktion einen NULL
Zeiger zurückgibt, ruft die Funktion auf setstate(failbit)
.
Weitere Informationen finden Sie unter rdbuf
, open
und setstate
.
Beispiel
Ein Beispiel, das verwendet wird, open
finden Sie unter basic_filebuf::open
.
basic_ofstream::operator=
Weist den Inhalt dieses Streamobjekts zu. Dies ist eine Verschiebungsaufgabe, die eine rvalue reference
Kopie nicht hinterlässt.
basic_ofstream& operator=(basic_ofstream&& right);
Parameter
right
Ein rvalue-Verweis auf ein basic_ofstream
-Objekt.
Rückgabewert
Gibt *this
zurück.
Hinweise
Der Member-Operator ersetzt den Inhalt des Objekts mithilfe des Inhalts von right
, als Rvalue-Verweis behandelt.
basic_ofstream::rdbuf
Gibt die Adresse des gespeicherten Streampuffers zurück.
basic_filebuf<Elem, Tr> *rdbuf() const
Rückgabewert
Gibt die Adresse des gespeicherten Streampuffers zurück.
Beispiel
Ein Beispiel, das verwendet wird, rdbuf
finden Sie unter basic_filebuf::close
.
basic_ofstream::swap
Tauscht den Inhalt von zwei basic_ofstream
-Objekten aus.
void swap(basic_ofstream& right);
Parameter
right
Ein lvalue
-Verweis auf ein anderes basic_ofstream
-Objekt.
Hinweise
Die Memberfunktion tauscht den Inhalt dieses Objekts mit dem Inhalt von right
aus.
Siehe auch
basic_ostream
Klasse
Threadsicherheit in der C++-Standardbibliothek
iostream
Programmieren
iostreams
Konventionen