Probleme mit Aufgabe



  • Hi hab ein Problem irgendwie bekomme ich nix ausgegeben ...

    soll in text dokument schreiben und dann an terminalprinten bei nächsten aufruf neue infos anhängen wieder alles ausgeben...

    vielleicht kann ja wer helfen...

    #include<stdlib.h>
    #include<stdio.h>
    #include<string.h>
    
    void datei_auslesen(char *vorname, char *nachname, char *MatNr){
    FILE *datei;
    char c; 
    
    datei = fopen("text.txt","ra");
    
    fprintf(datei,"%s,%s,%s\n",vorname,nachname, MatNr);
    
    while((c=fgetc(datei))!=EOF){
    //putchar(c);
    printf("%c",c);
    }
    
    printf("\n");
    fclose(datei);
    }
    
    int main(int argc, char *argv[]){
    
    if(argc<4){
    printf("Usage: %s <Vorname> <Nachname> <Mat.Nr.>", argv[0]);
    exit(0);
    }
    
    datei_auslesen(argv[1],argv[2],argv[3]);
    
    return 0;
    
    }
    


  • Vielleicht bin ich ja schon zu müde -
    ich seh nix wo du in die Datei schreibst 😕

    MfG f.-th.



  • in zeile 13

    mfg

    edit: in zeile 12 😋
    edit: in zeile 12 😛

    edit: Mein zweiter Versuch

    void datei_auslesen(char *vorname, char *nachname, char *MatNr){
    FILE *datei;
    char c;
    
    datei = fopen("text.txt","a+");
    fseek(datei, 1, SEEK_END);
    fprintf(datei,"%s,%s,%s\n",vorname,nachname, MatNr);
    
    while((c=fgetc(datei))!=EOF){
    //putchar(c);
    printf("%c",c);
    }
    
    printf("\n");
    fclose(datei);
    }
    

    geht auch nicht...

    Lösung:

    void datei_auslesen(char *vorname, char *nachname, char *MatNr){
    FILE *datei;
    char c; 
    
    datei = fopen("text.txt","a+");
    fprintf(datei,"%s,%s,%s\n",vorname,nachname, MatNr);
    
    fseek(datei,0,SEEK_SET);
    
    while((c=fgetc(datei))!=EOF){
    //putchar(c);
    printf("%c",c);
    }
    
    printf("\n");
    fclose(datei);
    }
    

Anmelden zum Antworten