Auslesefehler bei einer Textdatei



  • Hallo!
    Ich hoffe auf Eure Hilfe. Und zwar lese ich ein .dat File aus. Dieses teile ich in tokens auf, da ich mehrere Werte einzeln benötige.
    Die Datei hat vollgende Struktur:

    96400116
    98 4
    503 309
    *TASTEN 1
    5 22
    145 284 25
    170 284 39
    195 284 53

    Alles klappt wunderbar. Doch leider bekomme ich beim Auslesen der Zahl am Ende der Zeile immer ein | mit an meinen String gehängt. -> z.B. "96400116|"
    Kann mir jemand sagen an was das liegt? Die erste Zahl passt immer!!!
    Programmausschnitt:

    void GeoTasten(void)
    {

    input_stream = fopen (file, "r");

    while (!feof(input_stream))
    {

    if(fgets (line, LINE_LENGHT, input_stream))
    {
    temptok = line;

    for(i = 0; (akt_token = strtok(temptok, DELIM)) != NULL && (i < ANZ_SPALTEN); ++i)
    {
    z++;
    temptok = NULL;

    if(z==1)
    {
    Groesse = atoi(akt_token); //Token benötige ich dann als Int Wert
    }

    usw.



  • Ich nehme an, dass du die Werte vorher selbst in die Datei schreibst. Wenn dem so ist, dann setzt mal bitte vorn den Zeilenumbruch ('\n') noch ein '\r'



  • Nein, leider nicht!
    Die Datei wurde mir vorgegeben.
    Welche Möglickeit gibt es da noch?
    Danke für Deine Hilfe!!!


Anmelden zum Antworten