4.8 Dateibearbeitung
  • Das Lesen und Schreiben aus Dateien wird ebenfalls als Stream behandelt.
  • Genutzt werden die Klassen ofstream und ifstream.
  • Bei der Definition eines File-Streams kann im Konstruktor der Dateiname übergeben werden.
  • Optional kann ein "Öffnungsmodus" aus mehreren der folgenden Flags angegeben werden:
Öffnungsmodus
Beschreibung
ios::out
Öffnen zum Schreiben (default für ofstrem)
ios::app
Schreiben am Ende (alter Inhalt bleibt erhalten)
ios::ate
Schreiben mit Anfangsposition am Dateiende, aber alte Daten änderbar
ios::in
Öffnen zum Lesen (default für ifstream)
ios::trunc
Alten Inhalt zuerst Löschen
ios::binary
Im Binärmodus öffnen

  • Der allgemeine fstream, definiert zwar den Stream, das öffnen kann aber später durch ein fstream::open() erfolgen. (Fehlerstatus abfragen!)
  • Mit Hilfe von stream::close() kann eine Datei geschlossen werden.
  • Im Unterschied zu Stdin/-out kann der Dateizeiger kann mit fstream::seekg() und fstream::seekp() positioniert werden: seekg() positioniert den Lesezeiger, seekp() den Schreibzeiger (tatsächlich sind beide identisch).
  • Mit den Funktionen fstream::tellg() und fstream::tellp() lassen sich die Position der Lese- und der Schreibzeiger abfragen.