Einlesen einer Datei
-
Hallo, ich bin einer voll der Anfänger in Sachen C und versuche momentag meine Programme aus bestehenden sachen zu bauen ( indem ich diese etwas abändere).
Ich möchte eine bereits bestehende Datei (test.txt) einlesen.
/* fgets2.c */ #include <stdio.h> #include <stdlib.h> #define ZEILENLAENGE 80 int main(void) { FILE *quelle; char puffer[ZEILENLAENGE], name[20]; printf("Welche Datei wollen Sie zum Lesen öffnen: "); scanf("%s",name); if( (quelle=fopen(name,"r")) == NULL) { fprintf(stderr, "Kann %s nicht oeffnen\n", name); return EXIT_FAILURE; } while(fgets(puffer, ZEILENLAENGE, quelle)) fputs(puffer, stdout); return EXIT_SUCCESS; }
Dieses habe ich schon stehen ? aber ich schaffe es nicht die bereits bestehende Datei einlesen zu lassen
also ich möchte das man vorher keine abfrage nach der Datei benötigt.
bitte um hilfe
-
strcpy(name, "/pfad/zur/datei");
-
Was hast du denn das Programm läuft doch.
Hast du bei Namen auch wirklich test.txt eingegeben.
-
Warum seh ich eigentlich so oft bei ner Fehlermeldung fprintf über stderr ausgeben? N normales printf macht doch das selbe am stdout, was ja nicht angegeben werden muss?
-
Standard Output ist der Standardausgabekanal, Standard Error der für Fehlerausgabe. Könnte man sich eigentlich vom Namen her denken. Der Sinn ist, die Kanäle trennen zu können.
Wenn ein Programm z.B. ein Bild erzeugt und ich dieses an ein anderes Programm pipen möchte, möchte ich nicht dass das andere Programm auch "INFO: Generating 720x576 Pixels PNG" mit in die Bilddaten gemischt bekommt