Txt Laden wie mache ich das in c++ ?



  • Hallo,

    also ich habe ein programm geschrieben, dass ein Memo Feld besitzt und ein kleines Menü mit Speichern und Laden.
    Nun sind in dem Programm schon 3 namen, 3 größen und 3 Daten, die am Anfang durch einen Button ausgegeben werden. Nun habe ich es geschafft, dass Programm so zu schreiben, dass es die Daten der drei in einer Txt Datei speichert. Danach wollte ich durch Laden diese wieder verwenden, doch habe ich es nur geschafft, dass es im Memo Feld erscheint, aber nicht im Speicher ist.(somit nicht verwendet wird)

    Also kurz gesagt ist mein Problem, wie bekomme ich diese Daten wieder in den Speicher(LADEN).

    Vielen Dank
    Ewar



  • Hallo

    Schau dir ofstream und ifstream an.

    chrische



  • Ich vermute eher, dass Du mit dem geladenen Text irgendetwas anstellen willst.
    Wenn Du ihn schon in das Memo geladen hast, dann kannst Du über Lines::Text auch darauf zugreifen.
    Aber vielleicht lieg ich auch falsch und chrische hat das Problem schon gelöst.



  • Hallo,

    das ist ja mein Problem, wenn es im Memo Feld ist, ist es aber noch nicht im Speicher.
    Könnt ihr vllt mal einen bsp code hier rein schreiben. Habe nur Definitionen von ofstream... gefunden aber kein bsp code.

    mfg
    Ewar



  • Hallo

    Was verstehst du unter "noch nicht im Speicher"?
    Wenn du etwas in ein TMemo geladen hast ist es sehr wohl im Arbeitsspeicher.

    bis bald
    akari



  • Ja ich habe es im Memo Feld dann, aber ich kann dann nicht weiter rechnen oder andere Sachen machen, da es nur im Memo Feld ist, aber nicht im Speicher ist, und wie mache ich dies?

    ein kurzer erklärungscode würde helfen

    Danke schonma
    mfg
    Ewar



  • Hallo

    Rechnen? mit Text?

    Nichtsdestotrotz kannst du natürlich auch den Inhalt eines TMemos weiterverarbeiten, siehe die Eigenschaft TMemo::Lines. Da drin stehen die einzelnen Zeilen des Memos, die du auslesen kannst.

    Um Text in Zahlen umzuwandeln kannst du die Methoden StrToInt/StrToIntDef verwenden, dazu must du allerdings erstmal genau die Ziffern aus dem Text herausfinden.

    Ein Beispielcode kann ich dir nicht schreiben, da ich nicht verstanden hab was du vorhast oder was im TMemo nun drinsteht.

    bis bald
    akari



  • hiho,

    ich habe mich wohl falsch ausgedrückt.
    Also es ist so es sind 3 Namen gespeichert, 3 größen und 3 Geburtsdaten. Diese werden auf einem Memo Feld ausgegeben. Dann kann man dies speichern(das habe ich hinbekommen ;)). Ich speicher es als txt datei und somit sind da die Zahlen und die Namen gespeichert. Nun möchte ich dies Laden. Aber ich habe es nur hinbekommen, dass die Zahlen und die Namen ins Memo Feld wieder kommen, aber ich sie nicht verwenden kann, da sie nicht im Speicher sind sondern nur im Memo Feld.

    Nun möchte ich, dass sie in den Speicher übernommen werden und im Memo Feld ausgegeben werden.

    Das ist das Problem und ein Code würde mir sehr weiter helfen 😉

    Danke



  • Aus Deiner zweiten Erklärung gehen keinerlei neue Informationen hervor. Für das von Dir geschilderte Problem wurden Dir doch bereits Lösungsansätze gebracht. Schau doch mal in die BCB-Hilfe und lies Dir durch was für Eigenschaften und Methoden TMemo hat.

    Memo1->Lines->LoadFromFile("dummy.txt"); // Datei laden
    AnsiString Speicher = Memo1->Lines->Text; // Inhalt der Memo in Speicher
    int x = Speicher.Pos("...."); // Stringmanipulationen...
    ...
    


  • Ich glaube die Verwendung korrekter Bezeichnungen wäre sehr hilfreich. Soweit ich das verstehe wird hier mit "Speicher" so etwas wie ein Feld/Strukt/Vektor/Array gemeint, wo die einzelnen Werte getrennt nach Definition und Typ (z.B. Name,Größe,Datum) gespeichert sind.

    @lerngruppe1
    Wo hast du denn die Daten im "Speicher" bevor du diese speicherst? Oder werden die einfach so ins Memo getippt?

    Falls meine obige Vermutung stimmt, mußt du anhand von Trennzeichen (Tabulator, Semikolon o.ä.) die Werte aus dem Memo/der Text-Datei wieder zurück in deine gewünschte Feldstruktur bringen. Das sollte mit Hilfe der Methoden von AnisString eigentlich kein Problem sein.



  • habe das Programm mal hochgeladen, wie weit ich bin:

    http://www.c-plusplus.net/forum/viewtopic-var-p-is-1578274.html#1578274

    vllt ist es nun verständlicher.
    mfg
    Ewar


Anmelden zum Antworten