Namespaces
Variants

std:: basic_filebuf

From cppreference.net
< cpp ‎ | io
Definiert in Header <fstream>
template <

class CharT,
class Traits = std:: char_traits < CharT >

> class basic_filebuf : public std:: basic_streambuf < CharT, Traits >

std::basic_filebuf ist ein std::basic_streambuf , dessen zugeordnete Zeichenfolge eine Datei ist. Sowohl die Eingabesequenz als auch die Ausgabesequenz sind mit derselben Datei verknüpft, und eine gemeinsame Dateiposition wird für beide Operationen beibehalten. Die Einschränkungen beim Lesen und Schreiben einer Sequenz mit std::basic_filebuf sind dieselben wie bei std::FILE s.

Die Funktionen underflow() und overflow() / sync() führen die eigentliche E/A-Operation zwischen der Datei und den Get- und Put-Bereichen des Puffers durch. Wenn CharT nicht char ist, speichern die meisten Implementierungen Multibyte-Zeichen in der Datei und eine std::codecvt Facette wird zur Durchführung der Wide-/Multibyte-Zeichenkonvertierung verwendet.

Es werden mehrere Typdefinitionen für gängige Zeichentypen bereitgestellt:

Definiert im Header <fstream>
Typ Definition
std::filebuf std :: basic_filebuf < char >
std::wfilebuf std :: basic_filebuf < wchar_t >

Inhaltsverzeichnis

Mitgliedertypen

Typ Definition
char_type CharT
traits_type Traits ; das Programm ist fehlerhaft, wenn Traits::char_type nicht CharT ist.
int_type Traits::int_type
pos_type Traits::pos_type , das std:: fpos < Traits :: state_type > sein muss
off_type Traits::off_type
native_handle_type (C++26) implementierungsdefinierter Typ, der TriviallyCopyable und semiregular ist

Memberfunktionen

Öffentliche Elementfunktionen

Konstruiert ein basic_filebuf -Objekt
(öffentliche Elementfunktion)
(C++11)
Weist ein basic_filebuf -Objekt zu
(öffentliche Elementfunktion)
(C++11)
Tauscht zwei basic_filebuf -Objekte
(öffentliche Elementfunktion)
Gibt das zugrundeliegende implementierungsdefinierte Handle zurück
(öffentliche Elementfunktion)
[virtual]
Zerstört ein basic_filebuf -Objekt und schließt die Datei, falls geöffnet
(virtuelle öffentliche Elementfunktion)
Prüft, ob die zugehörige Datei geöffnet ist
(öffentliche Elementfunktion)
Öffnet eine Datei und konfiguriert sie als zugehörige Zeichensequenz
(öffentliche Elementfunktion)
Leert den Put-Bereichspuffer und schließt die zugehörige Datei
(öffentliche Elementfunktion)

Geschützte Elementfunktionen

[virtual]
Bietet optional die Anzahl der für die Eingabe verfügbaren Zeichen aus der Datei
(virtuelle geschützte Elementfunktion)
[virtual]
Liest aus der zugehörigen Datei
(virtuelle geschützte Elementfunktion)
[virtual]
Liest aus der zugehörigen Datei und bewegt den nächsten Zeiger im Get-Bereich
(virtuelle geschützte Elementfunktion)
[virtual]
Setzt die Eingabesequenz zurück, um ein Zeichen zurückzustellen, ohne die zugehörige Datei zu beeinflussen
(virtuelle geschützte Elementfunktion)
[virtual]
Schreibt Zeichen aus dem Put-Bereich in die zugehörige Datei
(virtuelle geschützte Elementfunktion)
[virtual]
Stellt einen benutzerdefinierten Puffer bereit oder macht diesen filebuf ungepuffert
(virtuelle geschützte Elementfunktion)
[virtual]
Positioniert die Dateiposition unter Verwendung relativer Adressierung neu
(virtuelle geschützte Elementfunktion)
[virtual]
Positioniert die Dateiposition unter Verwendung absoluter Adressierung neu
(virtuelle geschützte Elementfunktion)
[virtual]
Schreibt Zeichen aus dem Put-Bereich in die zugehörige Datei
(virtuelle geschützte Elementfunktion)
[virtual]
Ändert die zugehörige Locale
(virtuelle geschützte Elementfunktion)

Nicht-Member-Funktionen

spezialisiert den std::swap Algorithmus
(Funktions-Template)

Geerbt von std:: basic_streambuf

Membertypen

Mitgliedtyp Definition
char_type CharT
traits_type Traits ; das Programm ist fehlerhaft, wenn Traits::char_type nicht CharT ist.
int_type Traits::int_type
pos_type Traits::pos_type
off_type Traits::off_type

Memberfunktionen

[virtual]
zerstört das basic_streambuf -Objekt
(virtuelle öffentliche Elementfunktion von std::basic_streambuf<CharT,Traits> )
Locales
ändert die assoziierte Locale und ruft imbue ( ) auf
(öffentliche Elementfunktion von std::basic_streambuf<CharT,Traits> )
erhält eine Kopie der assoziierten Locale
(öffentliche Elementfunktion von std::basic_streambuf<CharT,Traits> )
Positionierung
ruft setbuf ( ) auf
(öffentliche Elementfunktion von std::basic_streambuf<CharT,Traits> )
ruft seekoff ( ) auf
(öffentliche Elementfunktion von std::basic_streambuf<CharT,Traits> )
ruft seekpos ( ) auf
(öffentliche Elementfunktion von std::basic_streambuf<CharT,Traits> )
ruft sync ( ) auf
(öffentliche Elementfunktion von std::basic_streambuf<CharT,Traits> )
Lesebereich
ermittelt die Anzahl der sofort verfügbaren Zeichen im Lesebereich
(öffentliche Elementfunktion von std::basic_streambuf<CharT,Traits> )
bewegt die Eingabesequenz vor und liest ein Zeichen ohne erneutes Vorrücken
(öffentliche Elementfunktion von std::basic_streambuf<CharT,Traits> )
(entfernt in C++17)
liest ein Zeichen aus der Eingabesequenz und bewegt die Sequenz vor
(öffentliche Elementfunktion von std::basic_streambuf<CharT,Traits> )
liest ein Zeichen aus der Eingabesequenz ohne die Sequenz zu bewegen
(öffentliche Elementfunktion von std::basic_streambuf<CharT,Traits> )
ruft xsgetn ( ) auf
(öffentliche Elementfunktion von std::basic_streambuf<CharT,Traits> )
Schreibbereich
schreibt ein Zeichen in den Schreibbereich und bewegt den nächsten Zeiger
(öffentliche Elementfunktion von std::basic_streambuf<CharT,Traits> )
ruft xsputn ( ) auf
(öffentliche Elementfunktion von std::basic_streambuf<CharT,Traits> )
Zurücklegen
legt ein Zeichen zurück in die Eingabesequenz
(öffentliche Elementfunktion von std::basic_streambuf<CharT,Traits> )
bewegt den nächsten Zeiger in der Eingabesequenz um eine Position zurück
(öffentliche Elementfunktion von std::basic_streambuf<CharT,Traits> )

Geschützte Memberfunktionen

konstruiert ein basic_streambuf Objekt
(geschützte Elementfunktion)
(C++11)
ersetzt ein basic_streambuf Objekt
(geschützte Elementfunktion)
(C++11)
tauscht zwei basic_streambuf Objekte aus
(geschützte Elementfunktion)
Locales
[virtual]
reagiert auf eine Änderung des assoziierten Locale
(virtuelle geschützte Memberfunktion von std::basic_streambuf<CharT,Traits> )
Positionierung
[virtual]
ersetzt den Puffer durch ein benutzerdefiniertes Array, falls erlaubt
(virtuelle geschützte Memberfunktion von std::basic_streambuf<CharT,Traits> )
[virtual]
positioniert den nächsten Zeiger in der Eingabesequenz, Ausgabesequenz oder beiden neu, unter Verwendung relativer Adressierung
(virtuelle geschützte Memberfunktion von std::basic_streambuf<CharT,Traits> )
[virtual]
positioniert den nächsten Zeiger in der Eingabesequenz, Ausgabesequenz oder beiden mittels absoluter Adressierung neu
(virtuelle geschützte Memberfunktion von std::basic_streambuf<CharT,Traits> )
[virtual]
synchronisiert die Puffer mit der assoziierten Zeichensequenz
(virtuelle geschützte Memberfunktion von std::basic_streambuf<CharT,Traits> )
Bereich abrufen
[virtual]
Ermittelt die Anzahl der für die Eingabe verfügbaren Zeichen in der zugehörigen Eingabesequenz, falls bekannt
(geschützte virtuelle Memberfunktion von std::basic_streambuf<CharT,Traits> )
[virtual]
Liest Zeichen aus der zugehörigen Eingabesequenz in den Get-Bereich
(virtuelle geschützte Memberfunktion von std::basic_streambuf<CharT,Traits> )
[virtual]
Liest Zeichen aus der zugehörigen Eingabesequenz in den Get-Bereich und bewegt den nächsten Zeiger vorwärts
(virtuelle geschützte Memberfunktion von std::basic_streambuf<CharT,Traits> )
[virtual]
liest mehrere Zeichen aus der Eingabesequenz
(virtuelle geschützte Elementfunktion von std::basic_streambuf<CharT,Traits> )
gibt einen Zeiger auf den Anfang, das aktuelle Zeichen und das Ende des Lesebereichs zurück
(geschützte Elementfunktion)
bewegt den nächsten Zeiger in der Eingabesequenz vor
(geschützte Elementfunktion)
positioniert die Anfangs-, Nächste- und End-Zeiger der Eingabesequenz neu
(geschützte Elementfunktion)
Put-Bereich
[virtual]
Schreibt mehrere Zeichen in die Ausgabesequenz
(geschützte virtuelle Memberfunktion von std::basic_streambuf<CharT,Traits> )
[virtual]
Schreibt Zeichen in die zugehörige Ausgabesequenz aus dem Put-Bereich
(virtuelle geschützte Memberfunktion von std::basic_streambuf<CharT,Traits> )
gibt einen Zeiger auf den Anfang, das aktuelle Zeichen und das Ende des Put-Bereichs zurück
(geschützte Member-Funktion)
bewegt den nächsten Zeiger der Ausgabesequenz vorwärts
(geschützte Elementfunktion)
positioniert die Anfangs-, Nächste- und End-Zeiger der Ausgabesequenz neu
(geschützte Elementfunktion)
Putback
[virtual]
Fügt ein Zeichen zurück in die Eingabesequenz ein und modifiziert möglicherweise die Eingabesequenz
(geschützte virtuelle Memberfunktion von std::basic_streambuf<CharT,Traits> )

Hinweise

Feature-Test Makro Wert Std Funktion
__cpp_lib_fstream_native_handle 202306L (C++26) Native Handles Unterstützung

Siehe auch

Objekttyp, der in der Lage ist, alle Informationen zu speichern, die zur Steuerung eines C-I/O-Streams benötigt werden
(typedef)