Daten direkt in Datei speichern?



  • Gibt es mit irgendeiner C++ oder WinApi-Funktion die Möglichkeit, Klassen oder generell Daten in eine Datei abzuspeichern? Und dann auch wieder auszulesen?

    Ich denke Dabei an ein direktes Speichern des Inhaltes im Arbeitsspeicher auf die Festplatte.

    Ich hoffe, ich habe mich nicht unklar ausgedrückt



  • Ich habs jetzt doch selbst rausgefunden, und damit ihr nicht schmachten müsst, verrat ich euch die Lösung:

    #include <iostream>
    #include <fstream>
    
    using namespace std;
    
    int main() {
       ostream datei;
       datei.open("name.ext",ios::binary|ios:out);
       int iDaten = rand() % 40000;
       datei.write(reinterpret_cast<char*>(&iDaten),sizeof(iDaten));
       datei.close();
       return 0;
    }
    

    Und ähnlich gehts mit Eingabe



  • Hallo

    Könntest du den Code vielleicht einbisschen erklären?
    Möchte was dazulernen 🙂

    MfG
    Technology



  • Versuch's mal mit www.cppreference.com - im Abschnitt C++ I/O findest du die nötigen Erklärungen 😉



  • Hallo,
    das funktioniert natürlich nur mit so "flachen" Datentypen wie int. Spätestens bei Datenstrukturen, die Pointer enthalten reicht ein simples Abspeichern der Bits nicht mehr aus. Da musst du dich dann wohl oder übel mit dem Thema Persistenzhaltung/Serialisierung auseinandersetzen.


Anmelden zum Antworten