Problem mit getline() Trennzeichen

Ich versuche, durch Lesen einer Datei, und bestimmte strings in jeder Zeile. Das Ende der Zeichenfolge, die ich brauche, ist gekennzeichnet durch ein Semikolon. Ich habe keine Probleme dies zu tun, aber ich bin zu bemerken, dass getline() mit dem Trennzeichen wird automatisch das anfügen einer neuen Zeile zu meinem string.

 filename.open(FileName);
 while(filename)
  {
    getline(filename, name[counter], ';');

    filename >> amount[counter] >> unit[counter] >> calories[counter];
    counter++;

  }

Also, wenn ich gehen würde, um drucken Sie die Namen von array-würde es 1 extra-Zeilenumbruch hatte, dass ich nicht selber dort, als gäbe es einen zusätzlichen '\n' wird auf dem Weg abgeholt. Hat jemand eine Lösung? Ein Beispiel für die Datei-format, die ich lese, von unten ist.

Dave Jones; 24 Hoch
Jillian Jones; 34 Kurz
etc...

Das format der Datei, die Sie zeigen, scheint nicht zu passen >> amount[counter] >> unit[counter] >> calories[counter]. Auch, was passiert, wenn counter++ überschreitet die Größe des arrays?

InformationsquelleAutor DiamonW | 2013-02-25

Schreibe einen Kommentar