Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Beschreibt ein Objekt, das die Extraktion von Elementen und codierten Objekten aus einem Datenstrompuffer der Klasse basic_filebuf<Elem, Tr>mit Elementen vom Typ Elemsteuert, deren Zeicheneigenschaften von der Klasse Trbestimmt werden.
Weitere Informationen finden Sie unter basic_filebuf.
Syntax
template <class Elem, class Tr = char_traits<Elem>>
class basic_ifstream : public basic_istream<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>.
Beispiel
Im folgenden Beispiel wird veranschaulicht, wie Text aus einer Datei gelesen wird.
// basic_ifstream_class.cpp
// compile with: /EHsc
#include <fstream>
#include <iostream>
using namespace std;
int main(int argc, char **argv)
{
ifstream ifs("basic_ifstream_class.txt");
if (!ifs.bad())
{
// Dump the contents of the file to cout.
cout << ifs.rdbuf();
ifs.close();
}
}
Eingabe: basic_ifstream_class.txt
This is the contents of basic_ifstream_class.txt.
Output
This is the contents of basic_ifstream_class.txt.
Konstruktoren
| Konstruktor | Beschreibung |
|---|---|
basic_ifstream |
Initialisiert eine neue Instanz eines basic_ifstream-Objekts. |
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_ifstream-Objekts mit dem Inhalt des bereitgestellten basic_ifstream-Objekts aus. |
Operatoren
| Operator | Beschreibung |
|---|---|
operator= |
Weist den Inhalt dieses Streamobjekts zu. Dies ist eine Verschiebungsaufgabe, die eine rvalue Kopie nicht hinterlässt. |
Anforderungen
Header: <fstream>
Namespace:std
basic_ifstream::basic_ifstream
Konstruiert ein Objekt vom Typ basic_ifstream.
basic_ifstream();
explicit basic_ifstream(
const char* _Filename,
ios_base::openmode _Mode = ios_base::in,
int _Prot = (int)ios_base::_Openprot);
explicit basic_ifstream(
const wchar_t* _Filename,
ios_base::openmode _Mode = ios_base::in,
int _Prot = (int)ios_base::_Openprot);
basic_ifstream(basic_ifstream&& 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, _wfsopenentspricht.
Hinweise
Der erste Konstruktor initialisiert die Basisklasse durch Aufrufen basic_istream(sb), wobei sb das gespeicherte Objekt der Klasse basic_filebuf<Elem, Tr>ist. Sie initialisiert sb auch durch Aufrufen basic_filebuf<Elem, Tr>.
Die zweite und dritte Konstruktor initialisieren die Basisklasse durch Aufrufen.basic_istream(sb) Sie initialisiert sb auch durch Aufrufen basic_filebuf<Elem, Tr>und dann sb.open(_Filename, _Mode | ios_base::in). Wenn die letztere Funktion einen NULL-Zeiger zurückgibt, ruft der Konstruktor auf setstate(failbit).
Der vierte Konstruktor initialisiert das Objekt mit dem Inhalt von right, der als rvalue Verweis behandelt wird.
Weitere Informationen finden Sie unterbasic_istream, basic_filebuf, setstateund open.
Beispiel
Im folgenden Beispiel wird veranschaulicht, wie Text aus einer Datei gelesen wird. Informationen zum Erstellen der Datei finden Sie im Beispiel für basic_ofstream::basic_ofstream.
// basic_ifstream_ctor.cpp
// compile with: /EHsc
#include <fstream>
#include <iostream>
using namespace std;
int main(int argc, char **argv)
{
ifstream ifs("basic_ifstream_ctor.txt");
if (!ifs.bad())
{
// Dump the contents of the file to cout.
cout << ifs.rdbuf();
ifs.close();
}
}
basic_ifstream::close
Schließt eine Datei.
void close();
Hinweise
Die Memberfunktion ruft - auf rdbuf close> .
Beispiel
Ein Beispiel, das verwendet wird, closefinden Sie unter basic_filebuf::close .
basic_ifstream::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 -> is_openzurück .rdbuf
Beispiel
Ein Beispiel, das verwendet wird, is_openfinden Sie unter basic_filebuf::is_open .
basic_ifstream::open
Öffnet eine Datei.
void open(
const char* _Filename,
ios_base::openmode _Mode = ios_base::in,
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,
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, _wfsopenentspricht.
Hinweise
Die Memberfunktion ruft auf rdbuf->open(_Filename, _Mode | ios_base::in). Weitere Informationen finden Sie unter rdbuf und basic_filebuf::open. Wenn "Öffnen" fehlschlägt, ruft die Funktion auf setstate(failbit), wodurch möglicherweise eine ios_base::failure Ausnahme ausgelöst wird. Weitere Informationen finden Sie unter setstate.
Beispiel
Ein Beispiel, das verwendet wird, openfinden Sie unter basic_filebuf::open .
basic_ifstream::operator=
Weist den Inhalt dieses Streamobjekts zu. Dies ist eine Verschiebungsaufgabe, die eine rvalue Kopie nicht hinterlässt.
basic_ifstream& operator=(basic_ifstream&& right);
Parameter
right
Ein rvalue-Verweis auf ein basic_ifstream-Objekt.
Rückgabewert
Gibt *this zurück.
Hinweise
Der Memberoperator ersetzt den Inhalt des Objekts mithilfe des Inhalts von right, der als rvalue Verweis behandelt wird. Weitere Informationen finden Sie unter Lvalues und Rvalues.
basic_ifstream::rdbuf
Gibt die Adresse des gespeicherten Streampuffers zurück.
basic_filebuf<Elem, Tr> *rdbuf() const
Rückgabewert
Ein Zeiger auf ein basic_filebuf Objekt, das den gespeicherten Datenstrompuffer darstellt.
Beispiel
Ein Beispiel, das verwendet wird, rdbuffinden Sie unter basic_filebuf::close .
basic_ifstream::swap
Tauscht den Inhalt von zwei basic_ifstream-Objekten aus.
void swap(basic_ifstream& right);
Parameter
right
Ein Verweis auf einen anderen Streampuffer.
Hinweise
Die Memberfunktion tauscht den Inhalt dieses Objekts mit dem Inhalt von right aus.
Siehe auch
Threadsicherheit in der C++-Standardbibliothek
iostream Programmieren
iostreams Konventionen