Daten in Text und nicht in Binärdatei speichern.



  • In meinem Buch steht: "Zudem können Sie noch vom Text- in den Binärmodus schalten, indem Sie "|binary" anhängen."
    Also hab ich binary nicht anghängt, er schreibt aber trotzdem nicht im Klartext.
    (Mit dem Buch dreh ich eh langsam durch, viele der Beispiele funktionieren nicht. Zudem decken die Beispiele gerade wichtige Sachen nicht ab. Das Buch heißt: "Dirk Louis, New Reference, C/C++, von Markt&Technik".)

    #include <iostream>
    #include <fstream>
    using namespace std;
    
    int main()
    {
    
    fstream datei_schreiben;		
    
    struct strdaten							
    	{
    		int x1;
    		int x2;
    		int x3;
    	} daten;
    
    unsigned long strdatensize=sizeof(strdaten);	 	// Tuning, bemerkbar nur bei sehr großen Dateien.
    
    datei_schreiben.open("test001.txt", ios_base::out|ios_base::trunc);
    
    for (int i=0; i<=100; i++)
    {
    	daten.x1=((rand()%10)-5);
    	daten.x2=((rand()%10)-5);
    	daten.x3=((rand()%10)-5);
    	datei_schreiben.write((char *) &daten, strdatensize);
    }
    
    datei_schreiben.close();
    
    return 0;
    }
    


  • Okay, so gehts:

    datei_schreiben << daten.x1 << ";" << daten.x2 << ";" << daten.x3 << "\n";
    

Anmelden zum Antworten