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 und Extrahieren von Elementen und codierten Objekten mithilfe eines Datenstrompuffers der Klasse basic_filebuf<Elem, mit Elementen vom Typ Trsteuert, >Elemderen Zeicheneigenschaften von der Klasse Trbestimmt werden.
Syntax
template <class Elem, class Tr = char_traits<Elem>>
class basic_fstream : public basic_iostream<Elem, Tr>
Parameter
Elem
Das grundlegende Element des Dateipuffers.
Tr
Die Eigenschaften des grundlegenden Elements des Dateipuffers (in der Regel char_traits<Elem>).
Hinweise
Das Objekt speichert ein Objekt der Klasse basic_filebuf<Elem, Tr>.
Hinweis
Der Lesezeiger (get-Zeiger) und der Schreibzeiger (put-Zeiger) eines fstream-Objekts sind NICHT unabhängig voneinander. Wenn der get-Zeiger verschoben wird, wird auch der put-Zeiger verschoben.
Beispiel
Das folgende Beispiel veranschaulicht, wie ein basic_fstream-Objekt erstellt wird, aus dem gelesen und in das geschrieben werden kann.
// basic_fstream_class.cpp
// compile with: /EHsc
#include <fstream>
#include <iostream>
using namespace std;
int main(int argc, char **argv)
{
fstream fs("fstream.txt", ios::in | ios::out | ios::trunc);
if (!fs.bad())
{
// Write to the file.
fs << "Writing to a basic_fstream object..." << endl;
fs.close();
// Dump the contents of the file to cout.
fs.open("fstream.txt", ios::in);
cout << fs.rdbuf();
fs.close();
}
}
Writing to a basic_fstream object...
Konstruktoren
| Konstruktor | Beschreibung |
|---|---|
| basic_fstream | Konstruiert ein Objekt vom Typ basic_fstream. |
Memberfunktionen
| Memberfunktion | Beschreibung |
|---|---|
| schließen | Schließt eine Datei. |
| is_open | Ermittelt, ob eine Datei geöffnet ist. |
| offen | Öffnet eine Datei. |
| rdbuf | Gibt die Adresse des gespeicherten Datenstrompuffers vom Typ Zeiger auf basic_filebuf<Elem zurück. Tr> |
| tauschen | Tauscht den Inhalt dieses Objekts gegen den Inhalt eines anderen basic_fstream-Objekts. |
Anforderungen
Kopfball:<fstream>
Namespace: std
basic_fstream::basic_fstream
Konstruiert ein Objekt vom Typ basic_fstream.
basic_fstream();
explicit basic_fstream(
const char* _Filename,
ios_base::openmode _Mode = ios_base::in | ios_base::out,
int _Prot = (int)ios_base::_Openprot);
explicit basic_fstream(
const wchar_t* _Filename,
ios_base::openmode _Mode = ios_base::in | ios_base::out,
int _Prot = (int)ios_base::_Openprot);
basic_fstream(basic_fstream&& right);
Parameter
_Dateiname
Der Name der zu öffnenden Datei.
_Modus
Eine der Enumerationen in ios_base::openmode.
_Prot
Der Standardmäßige Dateiöffnungsschutz, der dem Shflag-Parameter in _fsopen entspricht, _wfsopen.
Hinweise
Der erste Konstruktor initialisiert die Basisklasse durch Aufrufen von basic_iostream(sb), wobei sb das gespeicherte Objekt der Klasse basic_filebuf<Elem, Tr.> Sie initialisiert sb auch durch Aufrufen von basic_filebuf<Elem, Tr>.
Der zweite und dritte Konstruktor initialisiert die Basisklasse durch Aufrufen von basic_iostream( sb). Sie initialisiert sb auch durch Aufrufen basic_filebuf<von Elem, Tr> und dann sb.open(_ Filename, _Mode). Wenn die letztere Funktion einen NULL-Zeiger zurückgibt, ruft der Konstruktor setstate.
Der vierte Konstruktor initialisiert das Objekt mit dem Inhalt von right, das als rvalue-Verweis behandelt wird.
Beispiel
Ein Beispiel, in dem verwendet wird, finden Sie unter basic_fstream.
basic_fstream::close
Schließt eine Datei.
void close();
Hinweise
Die Memberfunktion ruft rdbuf> auf.
Beispiel
Sie finden ein Beispiel zur Verwendung von unter close.
basic_fstream::is_open
Ermittelt, 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.
Beispiel
Sie finden ein Beispiel zur Verwendung von unter is_open.
basic_fstream::open
Öffnet eine Datei.
void open(
const char* _Filename,
ios_base::openmode _Mode = ios_base::in | 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::in | ios_base::out,
int _Prot = (int)ios_base::_Openprot);
void open(
const wchar_t* _Filename,
ios_base::openmode _Mode);
Parameter
_Dateiname
Der Name der zu öffnenden Datei.
_Modus
Eine der Enumerationen in ios_base::openmode.
_Prot
Der Standardmäßige Dateiöffnungsschutz, der dem Shflag-Parameter in _fsopen entspricht, _wfsopen.
Hinweise
Die Memberfunktion ruft rdbuf->open(_ Filename, _Mode). Wenn diese Funktion einen Nullzeiger zurückgibt, ruft die Funktion setstate(failbit) auf.
Beispiel
Ein Beispiel für die Verwendung finden Sie unter basic_filebuf::open.open
basic_fstream::operator=
Weist diesem Objekt den Inhalt eines angegebenen Streamobjekts zu. Dies ist eine Verschiebezuweisung mit einem rvalue, der keine Kopie hinterlässt.
basic_fstream& operator=(basic_fstream&& right);
Parameter
Rechts
Ein lvalue-Verweis auf ein basic_fstream-Objekt.
Rückgabewert
Gibt *this zurück.
Hinweise
Der Memberoperator ersetzt den Inhalt des Objekts durch die Verwendung des Rechtsinhalts, der als Rvalue-Verweis behandelt wird.
basic_fstream::rdbuf
Gibt die Adresse des gespeicherten Datenstrompuffers vom Typ Zeiger auf basic_filebuf<Elem, Tr> zurück.
basic_filebuf<Elem, Tr> *rdbuf() const
Rückgabewert
Die Adresse des gespeicherten Streampuffers.
Beispiel
Sie finden ein Beispiel zur Verwendung von unter rdbuf.
basic_fstream::swap
Tauscht den Inhalt von zwei basic_fstream-Objekten aus.
void swap(basic_fstream& right);
Parameter
Rechts
Ein lvalue-Verweis auf ein basic_fstream-Objekt.
Hinweise
Die Mitgliedsfunktion tauscht den Inhalt dieses Objekts und den Inhalt des Rechts aus.
Siehe auch
Threadsicherheit in der C++-Standardbibliothek
iostream-Programmierung
iostreams-Konventionen