Dateiname als Variable angeben



  • Hallo,
    habe eine kurze und knackige Frage 🕶 ...
    also:
    Ich möchte einen Dateinamen, bzw. einen Pfad eingeben lassen. (Ohne OpenDialog...) Das sähe dann so aus:

    FILE *data;
            char date[20], buf[20];
            strcpy(date, Edit->Text.c_str());
            Edit->Clear();
            data=fopen ("date", "r");
            fread(buf, 20, 1, data);
            fclose(data);
            Memo->Text=buf;
    

    Wenn ich in Edit->Text "C:\test.txt" hineinschreibe müsste eigentlich in Memo->Text "Hallo" angezeigt werden. Habs auch mit "C:\\test.txt" probiert.... Wenn ich mit F7 compilieren lasse sehe ich in der Variable date folgendes: "C:\\test.txt\0\x13\0\0\0"Í\x16\0"...
    So funktionierts logischerweise:

    FILE *data;
            char date[20], buf[20];
            strcpy(date, Edit->Text.c_str());
            Edit->Clear();
            data=fopen ("C:\\test.txt", "r");
            fread(buf, 10, 1, data);
            fclose(data);
            Memo->Text=buf;
    

    Hat irgendjemand eine Idee warum es nicht funktioniert / wie ich es funktonierend machen könnte? Ich komm net dahinter...



  • Wenn du durch dein Programm durchstepst, wird dann der Backslash richtig übernommen?



  • Warum setzt du date in Anführungszeichen?



  • Lass bei date mal die Anführungszeichen weg . 🙄
    (hups da war jemand schneller)



  • thx ohne anführungszeichen läufts... dass ich da net selber draufgekommen bin...


Anmelden zum Antworten