Ich habe eine Textdatei die ich auslesen und in einem Array speichern moechte mit folgenden Inhalt:
1:2:3:4:
5:6:7:8:
Das funktioniert auch alles ganz wunderbar, nur in meiner Ausgabe hab ich eine Leerzeile zuviel, was wohl daran liegt, daß nach dem vierten Wert ein Zeilenumbruch erfolgt der wohl mit in das Array hineingeschrieben wird. Und das wiederum sieht man in der Ausgabefunktion für das Array.
Das einlesen erfolgt mit einer Einlesefunktion und funktioniert in etwa so:
Datastream ist mein Streamobjekt für fsstrem und structarray ist mein Array vom typ Struct.
Die ausgabe erfolgt mit der Ausgabefunktion die in etwa so aussieht:
Das letzte "endl" in der Ausgabe möchte ich aber nicht weglassen, das brauche ich noch für die manuelle eingabe der Felder. Wie werde ich nun diese zusätzlich Leerzeile wieder los?
1:2:3:4:
5:6:7:8:
Das funktioniert auch alles ganz wunderbar, nur in meiner Ausgabe hab ich eine Leerzeile zuviel, was wohl daran liegt, daß nach dem vierten Wert ein Zeilenumbruch erfolgt der wohl mit in das Array hineingeschrieben wird. Und das wiederum sieht man in der Ausgabefunktion für das Array.
Das einlesen erfolgt mit einer Einlesefunktion und funktioniert in etwa so:
Code:
for (int z = 0; z < n; z++)
{
getline(datastream, structarray[z].feld1,':');
getline(datastream, structarray[z].feld2, ':');
getline(datastream, structarray[z].feld3,':');
getline(datastream, structarray[z].feld4, ':');
};
Datastream ist mein Streamobjekt für fsstrem und structarray ist mein Array vom typ Struct.
Die ausgabe erfolgt mit der Ausgabefunktion die in etwa so aussieht:
Code:
for (int z = 0; z < n; z++)
cout << structarray[z].feld1<< "\t\t" << structarray[z].feld2<< "\t\t\t" << structarray[z].feld3<< "\t\t\t" << structarray[z].feld4<< endl;
Das letzte "endl" in der Ausgabe möchte ich aber nicht weglassen, das brauche ich noch für die manuelle eingabe der Felder. Wie werde ich nun diese zusätzlich Leerzeile wieder los?
Zuletzt bearbeitet: