5.Stunde – Einlesen und Ausgabe

01/17/2008 18:00 MeepMoep#1
5.Stunde – Einlesen und Ausgabe

Guten Abend,
kommen wir zu Stunde 5 ;D

Dem Einlesen von Daten bzw. deren Ausgabe aus Dateien.
Dafür brauchen wir erstmal eine neue Bibliothek <fstream> und 2 Neue Variablen
ifstream fürs einlesen und ofstream für die ausgabe also:
Code:
ifstream dat_ein;
ofstream dat_aus;
Dazu machen wir noch eine string variable „dateiname“
Code:
string dateiname;
dateiname =“blablubb.txt“;
So, fehlen noch 2 Befehle um den ‚Datenstrom’ zu öffnen ;D
Code:
dat_ein.open(dateiname.c_str(), ios_base::in);
 dat_aus.open(dateiname.c_str(), ios_base::out);
Dann noch ein kleines stück Source, welches überprüft ob die Datei geöffnet werden konnte.

Code:
    if(!dat_aus)
    {
                printf("Datei konnte nicht Geoeffnet werden!");
                cout << endl;
                return -1;
    }
Und natürlich das gleiche für dat_ein^^

So, mit
Code:
dat_aus << var1 << endl;
wird der Inhalt der Variable var1 in die Datei(hier blablubb.txt) geschrieben und dann in die nächste Zeile gesprungen!

Am Ende setzen wir noch ein
Code:
dat_aus.close();
Kommen wir zum auslesen ;D
Code:
    char zeichen;
    while (!dat_ein.eof())
    {
          dat_ein.get(zeichen);
          cout << zeichen;
    }
Damit wird der text aus der Datei ausgelesen und in die Console geschrieben.
Am ende natürlich ein
Code:
dat_ein.close();
Hoffe das war verständlich, hab viel aus meinen alten Sources einfach kopiert ;D

Kommen wir zu einer einfachen Aufgabe :P
Hausaufgabe:
Ein Programm, welches 2 Sachen kann, einmal etwas Auslesen aus einer Datei und einmal etwas in eine andere Schreiben. Natürlich mit einem schönen Auswahl Menü :D
01/17/2008 19:43 MenPirate#2
try to make a English tut we wanna learn xDxD..
01/17/2008 19:57 MeepMoep#3
Nope, won't write them in English, but Im trying to get someone who translate them ;D
01/17/2008 20:30 MenPirate#4
anyway this is Nice work and i can translate :)
I Follow your work :)
have a Nice day :)
07/20/2011 11:39 Polake1#5
Die Befehle sind gar nicht erklärt,
ich hab kA wofür jetzt

dat_ein.open(dateiname.c_str(), ios_base::in);
dat_aus.open(dateiname.c_str(), ios_base::out);


sein soll.
DU hast einfach nur reingepastet aber ungenügen beschrieben,
Hausaufgabe für mich unmöglich