txtDatei auslesen, Kommentare Überspringen



  • Hi ihrs, hab frisch mit c angefangen und versuche ein Prog. zu erstellen was mir eine Textdatei ausliesst, aber die Kommentarzeilen überspringt!

    Mein bisheriger Code mit DevC++, welcher NUR ausliesst:

    #include <stdio.h>

    main()
    {
    char cTemp;
    FILE *pFile;

    pFile = fopen("test.txt","r");
    while ((cTemp = fgetc(pFile)) != EOF)
    {
    printf("%c",cTemp);
    }

    fclose(pFile);
    }

    Inhalt von Test.txt:
    #Das ist ein Kommentar, dieser sollte nicht zu sehen sein
    Ich bin der Hans
    Ich bin ein Hund
    Ich bin eine Katze
    Das ist ein Haus
    #Noch ein Kommentar

    Mein problem, wie kann ich die Zeilen mit "#" überspringen?!



  • beim am zeilenanfang (erstes zeichen der datei oder direkt nach einem zeilenumbruch) gefundenem '#' ein flag setzen und beim nächsten zeilenumbruch das flag wieder zurücksetzen. dann in abhängigkeit von dem flag die zeichen ausgeben oder nicht.
    🙂



  • mal so nebenbei. cTemp müsste doch eigentlich als INT deklariert werden, damit die Variable überhaupt mit EOF verglichen werden kann, oder?



  • statt EOF , "NULL" bzw. "!" verwenden



  • BorisDieKlinge schrieb:

    statt EOF , "NULL" bzw. "!" verwenden

    Hä?

    Ja, cTemp müsste als int definiert sein.


Anmelden zum Antworten