Struct speichern



  • Aloha!
    Hoffe mal ich stell jetz nicht ne frage die schon tausend mal gestellt wurde. Über suchen und FAQ hab ich irgendwie nix gefunden.
    Also ich hab ein Program das mehrere AnsiStrings in einem struct speicher. jetzt würd ich gerne beim drücken des entsprechenden Buttons diese in eine Datei speichern.
    In der Konsole is das ja mit fstream kein problem, aber das scheint ja mit AnsiStrings nicht zu gehn. Gibt ne vergleichbare Funktion oder so mit der ich meine Daten speichern kann?
    Schon mal Danke!

    Mit einfachen Strings dürfte das doch in etwa so gehen, oder is das "speichern<<" Konsolen spezifisch?

    if (SaveDialog1->Execute())
    {
       ofstream speichern(SaveDialog1->FileName);
    
       for (i=0; i<anzahl; i++)
       {
          speichern<<cars[i].marke<<"\n"<<cars[i].typ<<"\n"<<cars[i].nummer<<"\n"<<cars[i].jahr<<"\n"<<cars[i].hub<<"\n"<<cars[i].leistung<<endl;
       }
    }
    

    Gruß Seeaal



  • Hallo

    hatte ich erst vor kurzen erst gepostet, aber da ich den Thread nicht mehr finde, nochmal der Auszug aus der BCB-Hilfe zu AnsiString

    Wenn Sie #include <iostream> oder #define VCL_IOSTREAM angeben, bevor Sie die include-Anweisung für die Datei dstring.h (die normalerweise indirekt durch die Datei vcl.h einbezogen wird) festlegen, können Sie die Streaming-Operatoren (<< und >>) mit AnsiStrings als Argument verwenden:

    ostream& operator << (ostream& os, const AnsiString& arg);
      istream& operator >> (istream& is, AnsiString& arg);
    

    Damit kannst du fstream mit AnsiString benutzten.
    Oder du kannst statt fstream auch TFileStream, das VCL-Äquivalent benutzen.

    bis bald
    akari



  • Danke dir!
    Werd das ganze mal ausprobieren! Aber bin recht zuversuchtlich! 🙂



  • Hallo Seeaal,
    vor kurzem hab ich dieselbe Frage gestellt und diese wurde ausführlich behandelt:
    http://www.c-plusplus.net/forum/viewtopic-var-t-is-107754.html
    Ich hoffe, der Link funktioniert.
    ist im Moment auf S. 4 in diesem Forum (Thema: struct array speichern)

    Grüße von sehreilig



  • link funktioniert! Habs bis jetzt doch noch nicht hinbekommen....hoffe mal das geht jetzt!
    Danke und Grüße
    Seeaal


Anmelden zum Antworten