Problem bei durshuchen einer .txt Datei
-
Ich wollte eine .txt Datei wie folgt durchsuchen, nur irgendwie macht er das nicht richtig.
Inhalt .txt Datei:
/* BEGIN */
strcpygets
/*EOF*/PS.: Die Kommentare hab ich nur hier zur abgrenzung des Inhalts der .txt Datei hingeschrieben!
Nun der Code mit dem ich dies dursuchen will:
while(fgets(puffer, 1024, source_file) != NULL) { if(strstr(puffer, "strcpy") != NULL) printf("Line %d, strcpy() function was found!\n", counter); else if(strstr(puffer, "scanf") != NULL) printf("Line %d, scanf() function was found!\n", counter); else if(strstr(puffer, "gets") != NULL) printf("Line %, gets() function was found!\n", counter); else if(strstr(puffer, "strcat") != NULL) printf("Line %, strcat() function was found!\n", counter); else if(strstr(puffer, "getwd") != NULL) printf("Line %d, getwd() function was found!\n", counter); else if(strstr(puffer, "fscanf") != NULL) printf("Line %d, fscanf() function was found!\n", counter); else if(strstr(puffer, "realpath") != NULL) printf("Line %d realpath() function was found!\n", counter); else if(strstr(puffer, "sprintf") != NULL) printf("Line %d sprintf function was found!\n", counter); else printf("Nothing was found, your source code may be clean!"); counter++; } }
Als ausgabe gibt er mir:
Line 1, strcpy() function was found!
Nothing was found!Nothing was found!Nothing was found!Nothing was found!Nothing
was found!Line , gets() function was found!
The scan has finished!Hat einer eine Idee wie ich das beheben kann?
-
Du hast uns den falschen Programmcode gegeben; schau dir den letzten printf-String und das was Du ausgibst, an. Da stimmt was nicht.
-
Was willst Du denn beheben?? Willst Du beheben, das der das "Nothing was found!" rausschmeisst, oder das der nur zum Schluss so ne Art Zusammenfassung bringt??
Wenn die "Nothing was found!" raus haben willst würde ich mir ne Variable anlegen, in der Du speicherst, ob was gefunden wurde, wenn die ganze Datei nix gefunden wurde, würde ich zum Schluss einmal ausgeben, das nix gefunden wurde.
Bei der Zusammenfassung musst Du Dir ein Array basteln, wo Du dann immer die gefundenen Sachen reinschreibst.
CIAO
Psyco