Datei auslesen



  • Hallo Leute,

    ich hab eine ganze Weile gesucht, bevor ich hier gepostet habe. Nur leider nix gefunden, was mir weiterhilft...

    Also, mein Problem sieht folgendermaßen aus:

    Ich möchte einen vom Benutzer eingegebenen String in einer Datei speichern. Danach soll der eingegebene String aus der Datei eingelesen und auf dem Bildschirm ausgegeben werden. Bisher sieht mein Programm so aus:

    (Das ist nur der Ausschnitt um den es geht... Aber vielleicht hab ich ne Headerdatei nicht includet, die da sein sollte? Oder im Funktionsheader stimmt was nicht? Ich bin für alle Vorschläge offen^^)

    #include <stdio.h>
    int main(void)
    {
            char str[50], name[50];
            FILE *userdata;
    
    	printf("Bitte geben Sie Ihren Namen ein:\n");
    	fgets(str, 100, stdin);
    
    	userdata = fopen("user.dat", "w");
    	if(NULL == userdata) {
    		printf("Konnte Datei \"test.dat\" nicht öffnen!\n");
    		return EXIT_FAILURE;
    	}
    	fprintf(userdata,"Name: %s", str);
    	return EXIT_SUCCESS;
    
    	fscanf(userdata, "%s", name);
    	printf("%s", name);
    	fclose(userdata);
    }
    

    Bis zu dem Punkt, wo der String in die Datei geschrieben wird, klappt alles, nur danach irgendwie nicht mehr. Der Compiler gibt weder beim compilieren noch beim linken Fehler aus, aber der String wird nicht auf dem Bildschirm ausgegeben.

    Allerdings muss ich dazu sagen, dass ich Visual C++ von M$ benutze und ehrlich gesagt keine Ahnung habe, in wiefern das wichtig ist 😕 .

    Meine Quelldatei hat aber die Endung .c.

    Würde mich riesig freuen, wenn da jemand weiterwüßte... Ich bin jedenfalls mit meinem Latein am Ende.

    Vielen Dank,

    RavenDesign



  • argh... ich hab meinen Fehler gefunden. Ist vielleicht ne Idee, die Datei auch zul lesen zu öffnen. 🙄



  • Den zweiten Parameter von fgets() solltest du aber nochmal überprüfen 😉



  • Ja, hab ich^^ Ist natürlich ein bisschen unsinnig, 50 zeichen über die Grenze zu schießen^^

    Allerdings hab ich schon wieder ein Problem... Kann man irgendwie Arrays "addieren"? also zum beispiel eine Dateiendung anhängen?



  • Ich denke man: strcat und man: strncat ist was du suchst.



  • wau, vielen Dank... Geht ja fix hier! 😃



  • lieber strncat 😛


Anmelden zum Antworten