C++ String splitten

Aixx

Ensign
Registriert
Sep. 2011
Beiträge
239
Nabend Leute,

bin gerade dabei einen String zu splitten und in vorgegebene Variablen zu speichern. Leider komme ich gerade nicht weiter


Code:
ifstream Datei;

Datei.open("Daten.txt");

if(!Datei) // Abfrage ob die Datei überhaupt existiert.
{
cout << "Datei nicht vorhanden" << endl;
}

while(getline(Datei,zeile))
{
//cout << zeile;
// Hier hat die Variable zeile den Wert : "1 Hans Wurst 2 Peter Zwiebel" 
}

Datei.close();

Die Daten.txt enthält

1 Hans Wurst
2 Peter Zwiebel

Diese einzelnen Werte sollen in die passenden Variablen beim Start des Programms eingelesen werden.

Dafür habe ich ein struct angelegt in dem am Ende alle hineingespeichert werden sollen.

struct Kundenstruct
{
int nr;
string KundeVorname;
string KundeNachname;
}
Kundenstruct Kundenfeld[100];

Die "1" soll natürlich in "nr" .. "Hans" in "KundeVorname" und "Wurst" in "KundeNachname"
Und natürlich solange bis alle Kunden/Zeilen abgeklappert sind in der txt datei.




Habe folgendes gefunden aber gerad steh ich bisl auf der Leitung wie ich dies umsetzen soll für die Array Variablen usw.

Code:
#include <strstream.h>

int main()
{  char s[] = "123 123.456 Hallo Z ...";
   int i;
   double d;
   char c, t[20];
   istrstream str(s);

   str >> i >> d >> t >> c;
   return 0;
}

Das Beispielprogramm liest folgende Werte in die Variablen:
i: 123
d: 123.456
t: "Hallo"
c: 'Z'


Hoffe es kann mir jemand helfen. Danke euch !!
 
omg wie einfach es seien kann ... Hab nur die Variable i geändert da ich die vom Sinn her in einer anderen Funktion benutze und dieser Wert dann verfälscht wird. Danke dir dafür ^^ ...
 
Bisschen Inputvalidierung tut wär nicht verkehrt, oder?
 
Zurück
Oben