daten aus txt-file umrechnen

  • Hallo, ich bin relativ neu mit C++ unterwegs und das ist auch meine erste Programmiersprache. Ich habe ein txt-file mit 6000 Zeilen, die ich von feet in Meter umrechnen will. In jeder Zeile steht erst eine Zahl, dann ein Space, dann die Einheit (ft). Allerdings steht nicht in jeder Zeile ein Wert, in manchen Zeilen steht ein "N" für "No Data".
    Ich hab mir das bisher so gemacht, dass ich mir zuerst mit tellg die Position merke, dann mit getline die komplette Zeile eingelesen habe und dann vergleiche ob in der Zeile ein N steht oder nicht. Steht ein N soll er "nodata" schreiben, sonst zurück zur letzten gespeicherten Position und einen float (die Zahl) und ein string (die Einheit) einlesen. Der float soll dann in Meter umgerechnet werden und in die neue Datei geschrieben werden. Das ganze funktioniert bisher so lange kein "N" steht. Beim ersten "N" bleibt das Skript hängen und schreibt unendlich oft die letzte Zahl vor dem "N" in die Datei.
    Das ganze sieht bisher so aus:

    Ich weiß, dass ich das ganze auch mit Excel machen könnte, aber ich würde es gerne so hinbekommen, da ich nicht nur eine Datei hab...Wäre für Hilfe echt dankbar.
    Vielen Dank
    Jogi

    Einmal editiert, zuletzt von The User (9. Mai 2009 um 00:36) aus folgendem Grund: Bitte [code] verwenden!

  • In der Datei <string> gibt es eine Funktion std::getline, die die Verwendung eines C-Strings obsolet macht. :D
    Ich würde dann auch ganz auf diese verzichten in deinem Programm. Es sind zwar viele Daten, aber im GB-Bereich bist du noch nicht, wo irgendwelche speziellen Optimierungen eine Rolle spielen würden.