Ciao a tutti,
non mi è molto chiaro come lavorare con i file binari in C++.
Io vorrei scrivere su di un file una struttura, ma per imparare ho iniziato scrivendo una variabile di tipo int.
Ecco come la scrivo:
Poi per leggerlo ho scritto questo codice:codice:ofstream file; file.open(temp.attuale, ios::binary); ... char tipo = (char)temp.type; // temp.type = int string t = tipo; /* utilizzo la variabile t per avere la lunghezza della stringa in quanto se uso la funzione strlen il programma va in crash... non so il perchè*/ file.write(tipo, t.size()); file.close();
Il risultato è una sequenza di caratteri invece del numero desiderato. Come mai? dove sbaglio?codice:ifstream file; char *type; int len; file.open(temp.attuale, ios::binary); file.seekg(0, ios::end); len = file.tellg(); file.seekg(0, ios::beg); type = new char[len]; file.read(type, len); file.close();

Rispondi quotando