Bonjour à tous,
Alors je vous explique mon problème:
J'ai une classe "Evnt_Horodate" declarée comme ceci:
class Evnt_Horodate
{ public:
int flag_suppression;
int flag_initialise;
Element element;
//Classe Element};
Elle contient un objet element de la classe Element declarée comme ceci:
class Element
{ public:
int data;
int date;
};
Je voudrais stocker cette classe dans un fichier binaire et pouvoir la relire par le suite.
Ma fonction d'écriture:
void ajouter
(Element *element
){ //Ouverture du fichier ofstream fichier_ecriture
("Stockage.txt",ofstream::
binary);
//Creation de l'objet evnt_horodate a ecrire Evnt_Horodate *evnt_horodate;
evnt_horodate = new Evnt_Horodate
();
event_horodate->element.
date =
15;
//Parametrage de l'objet evnt_horodate evnt_horodate->flag_initialise =
1;
evnt_horodate->flag_suppression =
0;
if(fichier_ecriture
) { //Position de l'octet int adresse_octet =
0;
//Positionnement du curseur dans le fichier fichier_ecriture.
seekp(adresse_octet,ios::
beg);
cout<<
"Ajout d'un élement"<<endl;
//Ecriture de la classe fichier_ecriture.
write((char*
) evnt_horodate,
sizeof(Evnt_Horodate
));
//Fermeture du fichier fichier_ecriture.
close();
} else { TRACE
("erreur d'ecriture dans le fichier !");
} //Destruction des objets delete evnt_horodate;
delete element;
}
Et ma fonction de lecture:
void lire()
{
int date_lue;
//Creation d'un objet de type Evnt_Horodate pour la lecture
Evnt_Horodate *evnt_horo_lecture;
evnt_horo_lecture = new Evnt_Horodate();
//Ouverture en lecture du fichier Stockage.txt
ifstream fichier_lecture;
fichier_lecture.open("Stockage.txt",ios::binary);
if(fichier_lecture)
{
//Positionnement du curseur dans le fichier
fichier_lecture.seekg(0,ios::beg);
//Lecture de l'evenement
fichier_lecture.read((char*) evnt_horo_lecture, sizeof(Evnt_Horodate));
//Lecture de la date de cet evenements
date_lue = evnt_horo_lecture->element.date;
cout<<"date lue :"<<date_lue<<endl;
//Fermeture du fichier
fichier_lecture.close();
}
else
{
cout<<"Erreur de lecture dans le fichier !"<<endl;
}
//Destruction de l'objet evnt_horo_recherche
delete evnt_horo_lecture;
}
Le fichier est bien créé et mon programme y écrit bien.
Mais "date_lue" qui devrait me renvoyer la valeur date de l'objet "element" contenu dans l'objet evnt_horo_lecture, reste toujours à 0... 
Vous voyez un problème dans mon code ?
Je vous remercis par avance !