Datei in Variable einlesen...



  • Hi, Leudde,

    ich bin absoluter N00b in Sachen C, deswegen bitte ich schon mal um Entschuldigung falls meine Fragen nicht euerem Niveu entspricht und hoffe trotzdem auf hilfreiche Anworten 😉

    Wie kann ich denn aus einer Datei Daten in eine Variablen wie Char oder Zeiger einlesen, ohne dass (bei Char) der Einlesevorgang nach dem ersten Leerzeichen in einer Zeile abbricht..???

    Beispiel :

    in der Datei test.dat hab ich die Zeilen :

    Herr Mustermann
    Frau Mustermann
    

    und in meiner c Datei hab ich :

    ...
    FILE *datei;
    char a[255];
    
    datei = fopen("test.dat","r");
    fscanf(datei,"%s",a);
    printf("%s",a);
    

    Und er gibt mir nur "Herr" aus... Was mach ich nun? Oder wie mach ich es richtig??



  • fgets(a, 255, datei);



  • Ok, danke dafür schon mal! 😉
    Nun der zweite Teil meiner Frage...

    ich habe die Datei test.dat :

    Mustermann|Musterstrasse 15|1234567
    Musterfrau|Musterweg 18|7654321
    

    und wie kann ich diese nun in eine struct mit folgenden Definition einlesen?

    struct Datensatz
    { 
      char Name[255];
      char Addresse[255];
      char Telefon[255];
    }
    

    Mit einer doppelt und dreifach verschachtelten While Schleife etwa? Oder wie löst man sowas? Alle meiner Versuche sind gescheitert... 😕



  • du liest die zeile in einen string und teilst dann auf...
    strpos oder strtok sind deine freunde!


Anmelden zum Antworten