Datei-Zugriff: ofstream (2/4)

Bei dem Öffnen einer Datei kann dem Objekt jedoch noch ein zweites Argument übergeben werden, welches den Modus der Bearbeitung festlegt:

  ofstream ausgabe_datei("neu_dat", ios::out );

Eine Ausgabedatei kann in zwei verschiedenen Modi geöffnet werden: zum einen im Modus Ausgabe (ios::out), zum anderen im Modus Anhängen (ios::app). Dabei sollte man beachten, daß eine bereits vorhandene Datei beim Öffnen im Ausgabemodus einfach überschrieben wird, d.h. die vorhandenen Daten gehen komplett verloren. Ist dies nicht erwünscht, d.h. will man die Daten in der Datei erweitern, so muß der Append-Modus verwendet werden. In diesem Fall werden die neuen Einträge an das Ende der Datei angehängt. Defaultmäßig ist ios::out eingestellt, d.h. beim Öffnen ohne eine Modusangabe gehen eventuell vorhandene Daten verloren!
Ist keine Datei mit dem angegebenen Namen vorhanden, so wird diese -- in beiden Modi -- vor dem eigentlichen Öffnen zunächst angelegt.

Da die Klasse ofstream von der Klasse ostream abgeleitet wurde, können alle in ostream definierten Operationen auch auf Objekte der Klasse ofstream angewandt werden. Dies hat den großen Vorteil, daß bereits vorhandene Ausgaberoutinen ohne große Mühe auch für die Ausgabe in Dateien genutzt werden können. Anstelle des Objektes cout schreibt man einfach den Objektnamen des Ofstream-Objektes.