std:: basic_ofstream
|
Definiert im Header
<fstream>
|
||
|
template
<
class
CharT,
|
||
Die Klassenvorlage
basic_ofstream
implementiert hochrangige Ausgabeoperationen auf dateibasierten Streams. Sie verbindet einen dateibasierten Streampuffer (
std::basic_filebuf
) mit der hochrangigen Schnittstelle von (
std::basic_ostream
).
Eine typische Implementierung von
std::basic_ofstream
enthält nur ein einziges nicht-abgeleitetes Datenelement: eine Instanz von
std::
basic_filebuf
<
CharT, Traits
>
.
Vererbungsdiagramm
Es werden mehrere Typdefinitionen für gängige Zeichentypen bereitgestellt:
|
Definiert im Header
<fstream>
|
|
| Typ | Definition |
std::ofstream
|
std :: basic_ofstream < char > |
std::wofstream
|
std :: basic_ofstream < wchar_t > |
Inhaltsverzeichnis |
Mitgliedertypen
| Mitgliedertyp | 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
|
native_handle_type
(C++26)
|
implementierungsdefinierter
Typ, der
TriviallyCopyable
und
semiregular
ist
|
Memberfunktionen
|
Konstruiert den Dateistrom
(öffentliche Elementfunktion) |
|
|
(destructor)
[virtual]
(implicitly declared)
|
zerstört den
basic_ofstream
und den zugehörigen Puffer, schließt die Datei
(virtuelle öffentliche Elementfunktion) |
|
(C++11)
|
verschiebt den Dateistrom
(öffentliche Elementfunktion) |
|
(C++11)
|
tauscht zwei Dateiströme
(öffentliche Elementfunktion) |
|
gibt das zugrundeliegende Rohdateigerät-Objekt zurück
(öffentliche Elementfunktion) |
|
|
(C++26)
|
gibt das zugrundeliegende implementierungsdefinierte Handle zurück
(öffentliche Elementfunktion) |
Dateioperationen |
|
|
prüft, ob der Strom eine zugeordnete Datei hat
(öffentliche Elementfunktion) |
|
|
öffnet eine Datei und ordnet sie dem Strom zu
(öffentliche Elementfunktion) |
|
|
schließt die zugeordnete Datei
(öffentliche Elementfunktion) |
|
Nicht-Member-Funktionen
|
(C++11)
|
spezialisiert den
std::swap
Algorithmus
(Funktionsschablone) |
Geerbt von std:: basic_ostream
Elementfunktionen
Formatierte Ausgabe |
|
|
fügt formatierte Daten ein
(öffentliche Elementfunktion von
std::basic_ostream<CharT,Traits>
)
|
|
Unformatierte Ausgabe |
|
|
fügt ein Zeichen ein
(öffentliche Elementfunktion von
std::basic_ostream<CharT,Traits>
)
|
|
|
fügt Zeichenblöcke ein
(öffentliche Elementfunktion von
std::basic_ostream<CharT,Traits>
)
|
|
Positionierung |
|
|
gibt die Ausgabepositionsanzeige zurück
(öffentliche Elementfunktion von
std::basic_ostream<CharT,Traits>
)
|
|
|
setzt die Ausgabepositionsanzeige
(öffentliche Elementfunktion von
std::basic_ostream<CharT,Traits>
)
|
|
Verschiedenes |
|
|
synchronisiert mit dem zugrundeliegenden Speichergerät
(öffentliche Elementfunktion von
std::basic_ostream<CharT,Traits>
)
|
|
Elementklassen
|
implementiert grundlegende Logik zur Vorbereitung des Streams für Ausgabeoperationen
(öffentliche Elementklasse von
std::basic_ostream<CharT,Traits>
)
|
Geerbt von std:: basic_ios
Member-Typen
| Member-Typ | Definition |
char_type
|
CharT
|
traits_type
|
Traits
|
int_type
|
Traits::int_type
|
pos_type
|
Traits::pos_type
|
off_type
|
Traits::off_type
|
Member-Funktionen
Status-Funktionen |
|
|
prüft, ob kein Fehler aufgetreten ist, d.h. E/A-Operationen verfügbar sind
(öffentliche Member-Funktion von
std::basic_ios<CharT,Traits>
)
|
|
|
prüft, ob das Dateiende erreicht wurde
(öffentliche Member-Funktion von
std::basic_ios<CharT,Traits>
)
|
|
|
prüft, ob ein Fehler aufgetreten ist
(öffentliche Member-Funktion von
std::basic_ios<CharT,Traits>
)
|
|
|
prüft, ob ein nicht behebbarer Fehler aufgetreten ist
(öffentliche Member-Funktion von
std::basic_ios<CharT,Traits>
)
|
|
|
prüft, ob ein Fehler aufgetreten ist (Synonym für
fail()
)
(öffentliche Member-Funktion von
std::basic_ios<CharT,Traits>
)
|
|
prüft, ob kein Fehler aufgetreten ist (Synonym für
!
fail()
)
(öffentliche Member-Funktion von
std::basic_ios<CharT,Traits>
)
|
|
|
gibt Statusflags zurück
(öffentliche Member-Funktion von
std::basic_ios<CharT,Traits>
)
|
|
|
setzt Statusflags
(öffentliche Member-Funktion von
std::basic_ios<CharT,Traits>
)
|
|
|
modifiziert Statusflags
(öffentliche Member-Funktion von
std::basic_ios<CharT,Traits>
)
|
|
Formatierung |
|
|
kopiert Formatierungsinformationen
(öffentliche Member-Funktion von
std::basic_ios<CharT,Traits>
)
|
|
|
verwaltet das Füllzeichen
(öffentliche Member-Funktion von
std::basic_ios<CharT,Traits>
)
|
|
Sonstiges |
|
|
verwaltet die Ausnahmemaske
(öffentliche Member-Funktion von
std::basic_ios<CharT,Traits>
)
|
|
|
setzt das Locale
(öffentliche Member-Funktion von
std::basic_ios<CharT,Traits>
)
|
|
|
verwaltet den assoziierten Streampuffer
(öffentliche Member-Funktion von
std::basic_ios<CharT,Traits>
)
|
|
|
verwaltet den verknüpften Stream
(öffentliche Member-Funktion von
std::basic_ios<CharT,Traits>
)
|
|
|
verengt Zeichen
(öffentliche Member-Funktion von
std::basic_ios<CharT,Traits>
)
|
|
|
erweitert Zeichen
(öffentliche Member-Funktion von
std::basic_ios<CharT,Traits>
)
|
|
Geerbt von std:: ios_base
Memberfunktionen
Formatierung |
|
|
verwaltet Formatierungsflags
(öffentliche Elementfunktion von
std::ios_base
)
|
|
|
setzt spezifische Formatierungsflags
(öffentliche Elementfunktion von
std::ios_base
)
|
|
|
löscht spezifische Formatierungsflags
(öffentliche Elementfunktion von
std::ios_base
)
|
|
|
verwaltet Dezimalgenauigkeit von Gleitkommaoperationen
(öffentliche Elementfunktion von
std::ios_base
)
|
|
|
verwaltet Feldbreite
(öffentliche Elementfunktion von
std::ios_base
)
|
|
Locales |
|
|
setzt Locale
(öffentliche Elementfunktion von
std::ios_base
)
|
|
|
gibt aktuelle Locale zurück
(öffentliche Elementfunktion von
std::ios_base
)
|
|
Internes erweiterbares Array |
|
|
[static]
|
gibt eine programmweit eindeutige Ganzzahl zurück, die sicher als Index für
pword()
und
iword()
verwendet werden kann
(öffentliche statische Elementfunktion von
std::ios_base
)
|
|
vergrößert bei Bedarf den privaten Speicher und ermöglicht Zugriff auf das
long
-Element am gegebenen Index
(öffentliche Elementfunktion von
std::ios_base
)
|
|
|
vergrößert bei Bedarf den privaten Speicher und ermöglicht Zugriff auf das
void
*
-Element am gegebenen Index
(öffentliche Elementfunktion von
std::ios_base
)
|
|
Verschiedenes |
|
|
registriert Ereignis-Callback-Funktion
(öffentliche Elementfunktion von
std::ios_base
)
|
|
|
[static]
|
legt fest, ob C++- und C-I/O-Bibliotheken interoperabel sind
(öffentliche statische Elementfunktion von
std::ios_base
)
|
Elementklassen |
|
|
Stream-Exception
(öffentliche Elementklasse von
std::ios_base
)
|
|
|
initialisiert Standard-Stream-Objekte
(öffentliche Elementklasse von
std::ios_base
)
|
|
Mitgliedstypen und Konstanten |
|||||||||||||||||||||||||||||||||||||||
| Typ | Erklärung | ||||||||||||||||||||||||||||||||||||||
|
Stream-Öffnungsmodus-Typ
Folgende Konstanten sind ebenfalls definiert:
(Typedef) |
|||||||||||||||||||||||||||||||||||||||
|
Formatierungsflags-Typ
Die folgenden Konstanten sind ebenfalls definiert:
(typedef) |
|||||||||||||||||||||||||||||||||||||||
|
Zustandstyp des Streams
Folgende Konstanten sind ebenfalls definiert:
(Typdefinition) |
|||||||||||||||||||||||||||||||||||||||
|
Suchrichtungstyp
Folgende Konstanten sind ebenfalls definiert:
(Typdefinition) |
|||||||||||||||||||||||||||||||||||||||
|
gibt den Ereignistyp an
(enum) |
|||||||||||||||||||||||||||||||||||||||
|
Callback-Funktionstyp
(typedef) |
|||||||||||||||||||||||||||||||||||||||
Hinweise
| Feature-Test Makro | Wert | Std | Funktion |
|---|---|---|---|
__cpp_lib_fstream_native_handle
|
202306L
|
(C++26) | Native-Handle-Unterstützung |
Beispiel
#include <fstream> #include <iostream> #include <string> int main() { std::string filename = "Test.b"; { std::ofstream ostrm(filename, std::ios::binary); double d = 3.14; ostrm.write(reinterpret_cast<char*>(&d), sizeof d); // binäre Ausgabe ostrm << 123 << "abc" << '\n'; // Textausgabe } // zurücklesen std::ifstream istrm(filename, std::ios::binary); double d; istrm.read(reinterpret_cast<char*>(&d), sizeof d); int n; std::string s; istrm >> n >> s; std::cout << " zurückgelesen: " << d << ' ' << n << ' ' << s << '\n'; }
Ausgabe:
zurückgelesen: 3.14 123 abc