Pfad in txt Speichern, wenn vorhanden einlesen[Edit]



  • Servus

    Ich habe 3 Edit Boxen die zu Pfad Zwecken genutzt werden.

    Edit1->Text;
    Edit2->Text;
    Edit3->Text;

    Die Edit boxen sind bereits als solches eingebunden und Funktionieren zur Pfad weitergabe via AnsiString.

    Nun möchte ich die Pfade Einspeichern lassen.

    Schließlich soll der User nit jedes mal die Pfade selber von neuem eintragen^^

    Generell hab ich mir das folgendermaßen vorgestellt.

    Der User gibt beim ersten start des Programmes die Pfade ein und drück auf einen "Speichern" butten.
    Durch drücken des Speicher Buttons werden die Pfade die in den 3 Edit Boxen eingelesen wurden (Via SelectDictory) in ein Text file z.b config.txt eingespeichert.

    Beim nächsten start des Prgrammen soll geprüft werden ob eine config.txt existiert wenn ja soll der inhalt in die 3 Edit Boxen eingelesen werden.

    X.X klingt wirr macht aber sinn^^

    danke



  • Das ist ja schön. Hast du auch eine Frage?



  • Probiers mal mit TStringList und der SavetoFile funktion

    also mit

    TStringList *Liste = new TStringList; // Erstellen
    Liste->Add(Edit1->Text); // Hinzufügen
    Liste->SavetoFile("Config.txt");

    ich weiß nicht ob die syntax oder die funktionsnamen stimmen aber ungefär so solltes klappen. kannst dann mit load from file und file exists wieder aufrufen



  • delete nicht vergessen oder auto_ptr nehmen.
    Ich würde hier Standard-C++ bevorzugen.

    std::ofstream out("Config.txt");
    out << Edit1->Text << "\n";
    


  • Das könnte durch aus Funktionieren.

    wenn ich den Code so annehme dann sacht er mir 'SavetoFile' ist kein Element von 'TStringList'

    des such ich mir gleich raus.

    So und wie schaff ichs die Pfade aus der Liste in die Edit boxen wieder einzulesen

    vom auf bau müsste des ca so aussehen wenn ich mich nit irre.

    Edit1 Box :

    void __fastcall TPagesDlg::Edit1Change(TObject *Sender)
    {
    if (FileExists(config.txt))
     (
       \\Hier müsste der code für das einlesen des Pfades sein aus der config.txt
     )
    }
    

    und die Frage war : wie ich es hinbekomme das er die Pfade aus 3 Edit Boxen speichert und die Pfade beim nächsten Start Automatisch in die Edit Boxen einließt.

    danke



  • Braunstein schrieb:

    delete nicht vergessen oder auto_ptr nehmen.
    Ich würde hier Standard-C++ bevorzugen.

    std::ofstream out("Config.txt");
    out << Edit1->Text << "\n";
    

    nu bin ich verwirrt XD



  • Schau doch einfach weiter in die Hilfe zu TStringList (wenn du das schon nehmen willst).
    Das Gegenteil von SaveToFile heißt....

    LoadFromFile
    


  • Black++ schrieb:

    nu bin ich verwirrt XD

    Warum denn das? Viele Wege führen nach Rom.
    Der Code war als Alternative gedacht. Du kannst natürlich auch mit TStringList arbeiten.



  • TStringList funzt super^^

    So nun hat er mir die Pfade eingespeichert : )

    Wenn ich diese jetzt mit LoadFromFile würde er mir Wahrscheinlich Alle vorhandenen Pfade in eine Edit Box rein klatschen, wie also kann ich es mit dem LoadFromFile hinbekommen das er nur die erste Zeile einließt ?

    Fortsetzend das die Edit2 Box natürlich nur den 2 Pfad Einließt



  • Schau dir einfach mal gründlich die Hilfe zu TStringList und deren Eigenschaften und Funktionen an. Da findest du z.Bsp. TStringList::Strings oder Add oder ....



  • Hm, ich würde das eigentlich eher als typischen Anwendungsfall für TIniFile sehen.


Anmelden zum Antworten