[C con Clase] Como escribir y leer un arreglo de objetos en un archivo binario?

Joseph R synth3tik0 en gmail.com
Sab Ago 2 05:57:26 CEST 2014


​He tratado de usar fstream​ y aunque aparentemente compila, el programa se
cuelga.
Quiero copiar(recuperar) lo que hay  dentro del archivo(miperro5[]), a
miperro6[] y después mostrar sus nombres
Uso Codelite 6 en windows 7

#include <stdio.h>
#include <iostream>
#include <Perro.hpp>
#include <fstream>

using std::cout;
using std::endl;

int main(int argc, char **argv)
{

        Perro miperro4;
Perro miperro5[5];
Perro miperro6[5];
miperro5[2].nombre = "lucky";
 std::ofstream myfile;
myfile.open("example.bin", std::ios::out | std::ios::app |
std::ios::binary);
for(int i = 0; i < 5; i++){
myfile.write(reinterpret_cast<char *>(&miperro5[i]), sizeof(Perro));
}
myfile.close();
 std::ifstream myfile2;
myfile2.open("example.bin", std::ios::in | std::ios::binary);
for(int j = 0; j < 5; j++){
myfile2.read(reinterpret_cast<char *>(&miperro6[j]), sizeof(Perro));
}
myfile2.close();
 for(int z = 0; z < 5; z++){
 cout << miperro6[z].nombre << endl;
}
 std::cin.get();
return 0;
}

Saludos..
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20140801/62dba5bd/attachment.html>


Más información sobre la lista de distribución Cconclase