Datei-Zugriff: ofstream (1/4)

Beginnen wir unsere Betrachtungen mit der Klasse ofstream.

Die Anforderung eines Objektes dieser Klasse erfolgt über den Befehl

  ofstream ausgabe_datei("neu.dat");

wobei der String "neu.dat" den physischen Namen der Datei darstellt, während der hier gewählte Name ausgabe_datei den Objektnamen bezeichnet. Wird ein Datei-Stream-Objekt mit einem String als Parameter initialisiert, so wird stets versucht, die entsprechende Datei zum Lesen bzw. Schreiben zu öffnen.
Wird hingegen ein Datei-Objekt angelegt, ohne es zu initialisieren, so wird auch keine Datei geöffnet. Dies kann später mit der Elementfunktion open() explizit nachgeholt werden. Da der Vorgang des Öffnens einer Datei auch einmal fehlschlagen kann, sollte vor dem Zugriff auf diese Datei unbedingt überprüft werden, ob das Öffnen geglückt ist! Dies kann z.B. über folgende Abfrage geschehen:

  if (! ausgabe_datei)
  {
    // Öffnen ist gescheitert  => Fehlerbehandlung
  }

Einer ähnlichen Abfrage sind wir schon bei der Standardeingabe begegnet, wo überprüft wurde, ob eine Tastatureingabe geglückt ist. Datei-Streams besitzen -- wie die bereits kennengelernten Standard-I/O Streams -- verschiedene Zustandflags, die direkt oder indirekt über Funktionen abgefragt werden können.