Mit fgetc auslesen
-
Wie lese ich denn mit fgetc Dateien aus und gebe sie auf dem Bildschirm aus?
-
google
mfg,
julian
-
Die Funktionen getc() und fgetc() sind das dateiorientierte Gegenstück zu getchar().
Sie werden verwendet, um einzelne Zeichen aus einem Stream zu lesen, der zuvor mit fopen() geöffnet wurde.
Der Unterschied zwischen getc() und fgetc() liegt darin, dass fgetc() als eine Funktion implementiert ist und getc() ein Makro sein darf.Hier die Syntax dazu:
#include <stdio.h> int getc(FILE *datei); int fgetc(FILE *datei);
Folgende beiden Schreibweisen sind dabei identisch:
// liest ein Zeichen aus der Standardeingabe getchar(); // liest ebenfalls ein Zeichen aus der Standardeingabe fgetc(stdin);
Dazu folgt ein Listing, welches eine Datei zum Lesen öffnet und anschließend den Inhalt der Datei Zeichen für Zeichen auf dem Bildschirm ausgibt. Eingelesen wird so lange, bis das Zeichen für Dateiende oder Fehler erreicht wird (EOF).
/* fgetc1.c */ #include <stdio.h> #include <stdlib.h> int main(void) { int c; FILE *datei; datei=fopen("test.txt", "r"); if(datei != NULL) { while( (c=fgetc(datei)) != EOF) putchar(c); } else { printf("Konnte Datei nicht finden bzw. öffnen!\n"); return EXIT_FAILURE; } return EXIT_SUCCESS; }