Was macht/heisst diese Zeile (struct,fscanf)?



  • Hallo zusammen! Ich wollte fragen was genau diese Zeile tut bzw. sagt?
    Die Datei die ich vorher öffne ist eine CSV-Datei. Ich habe die verschiedenen Wörter mit ';' getrennt.

    if(fscanf(fz, "%[^;];%[^;];%[^\n]\n", daten[x - 1].name, daten[x - 1].vorn, &daten[x - 1].jahr) == EOF) 
        break; 
        x++;
    

    Vielen Dank für eure Hilfe! 🙂





  • Danke viel mal nun verstehe ich es. 🙂 👍 👍
    Jetzt habe ich noch eine Frage: Gibt es eine Möglichkeit in einem CSV-File zu suchen z.b eine Zeile auszugeben? Oder in einem struct zu suchen, weiss da jemand bescheid darüber?


  • Mod

    Ja, es ist möglich, mit einem Computer Daten zu verarbeiten, wozu auch das Durchsuchen der Daten zählt. In der einfachsten Form geht man alle Datensätze durch und vergleicht sie mit einer Vorgabe.



  • Der fscanf Formatstring sieht schon mal ganz gut aus, wenn fscanf auch falsch aufgerufen wird. Es muss natürlich ==3 bzw. !=3 heißen und nicht ==EOF.
    Tatsächlich kann man die mühsam aus CSV extrahierten und in einem struct(Array) abgelegten Daten anschließend auch benutzen, durchsuchen.
    Und ggü. CSV, wo alles zunächst mal nur als String vorliegt, hat struct schon die Typen vorliegen, ein Suchen ist hierauf also weitaus einfacher zu bewerkstelligen als in CSV-Strings.


Anmelden zum Antworten