fopen() mit Parameter append



  • Hi Leute,

    bin auf ein Problem gestoßen, bei dem ich nicht weiterkomme. Folgendes soll passieren:

    Ausgangsstatus der Datei player.txt:

    0
    

    Ein Durchlauf:

    1
    String1
    

    Zwei Durchläufe:

    2
    String1
    String2
    

    usw.

    Aber das passiert leider nicht.

    pt_file = fopen("player.txt","a");
    fprintf(pt_file,"\n%s",PLAYER_SEARCH_EINGABE);
    fclose(pt_file);
    

    Problem: Trotz des Parameters "a" append, geht er nicht an das Ende der Datei sondern bei mir nur IMMER an das Ende der ersten Zeile. Warum? Was mach ich falsch? Was definiert das Ende einer Datei?

    Resultat bei mir er überschreibt dann immer die 2.Zeile.
    Ausgangsstatus der Datei player.txt:

    0
    

    Ein Durchlauf:

    1
    String1
    

    Zwei Durchläufe:

    2
    String2
    


  • Wie soll er denn die Zahl in der ersten Zeile überschreiben, wenn du immer nur appendest? Ich hab das starke Gefühl, du zeigst uns den entscheidenden Code gar nicht. Vermutlich machst du die Datei erstmal mit "w" auf, um die erste Zeile zu überschreiben. Dabei wird der Rest abgeschnitten.



  • Oh stimmt da hab ich gar nicht dran gedacht. Dank dir


Anmelden zum Antworten