Pues este es mi problema:
Quiero guardar una lista en un fichero. Lo estoy haciendo así (lo he visto en StackOverflow) pero a la hora de leer la lista que recupero de un fichero tengo un error.
Este es el código:
Código C++:
Ver original
#include <fstream> #include <iostream> #include <list> using namespace std; typedef list<int> ListaEnteros; int main() { ListaEnteros lista1; lista1.push_back(1); lista1.push_back(3); lista1.push_back(5); lista1.push_back(7); lista1.push_back(9); lista1.push_back(11); lista1.push_back(13); /***********guardar en fichero*******************/ int tamLista=lista1.size(); ofstream ofs("borrar.dat", ios::out|ios::binary); ofs.write (reinterpret_cast<char*>(&tamLista),sizeof(int)); ofs.write (reinterpret_cast<char*>(&lista1),(tamLista*sizeof(int))); ofs.close(); /*********recuperar de fichero***************/ ListaEnteros lista2; int tamLista2; ifstream ifs("borrar.dat",ios::in|ios::binary); ifs.read(reinterpret_cast<char*>(&tamLista2),sizeof(int)); lista2.resize(tamLista2); ifs.read(reinterpret_cast<char*>(&lista2),(tamLista2*sizeof(int))); ifs.close(); /*********imprimir la lista*******************/ for (auto it=lista2.begin();it!=lista2.end();it++) { cout<<*it<<endl; } return 0; }
Bueno, pues como siempre, gracias por adelantado