Ecriture/Lecture dans un fichier d'une class

cs_Veovis Messages postés 3 Date d'inscription dimanche 8 juin 2003 Statut Membre Dernière intervention 16 octobre 2004 - 13 oct. 2004 à 00:11
cs_Veovis Messages postés 3 Date d'inscription dimanche 8 juin 2003 Statut Membre Dernière intervention 16 octobre 2004 - 13 oct. 2004 à 22:16
Salut,

Ca fait pas mal de jour que j'essais de finir mon projet de fac, mais je galere grave sur un probleme.

J'ai une class et je voudrais mettre toutes les données de ma class dans un fichier texte, et vice versa (lire le fichier texte et la mettre dans une class)

Voila un bout de code :

////

class tableau{

private:
char nom[32];
int pointeur;

}

int main() {

tableau x[50],tab[50];

f.open("fichier.txt", ios::in|ios::out|ios::binary);
f.seekp(0,ios::beg);
for(int i=1;i<=50;i++) {
f.write((char *)&tab[i], sizeof(tableau));
}
f.close();

fl_h.open("fichier.txt", ios::in|ios::out|ios::binary);
fl_h.seekg(0,ios::beg);
while(!fl_h.eof()) {
n++;
fl_h.read((char*)&x[n],sizeof(tableau));
}
fl_h.close();

}

/////

PS. J'ai vraiment du mal a maitriser la lecture et l'ecriture.
Ths pr les reponses. Ca fait pas mal de jour, que je galere la.

4 réponses

cs_thierry la fronde Messages postés 351 Date d'inscription mercredi 21 juillet 2004 Statut Membre Dernière intervention 12 août 2009
13 oct. 2004 à 01:07
for(int i=1;i<=50;i++) ?? es-tu sûr ? le tab va de 0 à 49!

f.write((char *)&tab[i], sizeof(tableau)); ?! n'écrit pas le contenu de ta classe, tab[I] contient des pointeurs sur des tableaux , si je ne me trompe.

Pour écrire il faut que tu fasses des fonctions pour récupérer tes données membres privées.

A+
0
leprov Messages postés 1160 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 octobre 2010 17
13 oct. 2004 à 10:05
si ton fichier est un fichier texte, ne met pas le flag ios::binary.
pour écrire, tu met les données membres de ta classe dans le fichier genre a raison de une par ligne, si tu as toujours tt sous le meme format, pour que ton prog récupere les données, t'as juste a faire un constructeur qui prenne tes données, tu recuperes tes données ds le fichier, tu stock tt ds des variables temporaires et tu appelle ton constructeur
0
stephane_1979 Messages postés 9 Date d'inscription vendredi 8 octobre 2004 Statut Membre Dernière intervention 14 octobre 2004
13 oct. 2004 à 10:07
Salut,

Je suis d'accord avec Thierry les 2 points
0
cs_Veovis Messages postés 3 Date d'inscription dimanche 8 juin 2003 Statut Membre Dernière intervention 16 octobre 2004
13 oct. 2004 à 22:16
Oki merci pr c conseil, je vais voir cela...
0
Rejoignez-nous