Tableau multidimensionel et fichiers

Signaler
Messages postés
60
Date d'inscription
dimanche 8 décembre 2002
Statut
Membre
Dernière intervention
1 juillet 2004
-
Messages postés
60
Date d'inscription
dimanche 8 décembre 2002
Statut
Membre
Dernière intervention
1 juillet 2004
-
slt à tous.

Voila, je voudrai mettre dans un tableau multidimensionel chaque ligne d'un fichier, puis modifier une ligne du tableau pour le réécrire dans un fichier.
C pour modifier juste une ligne d'un fichier.
Seulement, ma méthode ne fonctionne pas comme je le voudrais ...
Quelqu'un peut m'aider ou me donner un exemple ?

8 réponses

Messages postés
1905
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
17 septembre 2012
3
Salut,
Comment tu trouve la ligne de ton fichier a modifier ? tu sais ce qu'elle contient ?
Messages postés
60
Date d'inscription
dimanche 8 décembre 2002
Statut
Membre
Dernière intervention
1 juillet 2004

ben ouai.
En fait, j'ai déclarer des constantes :

#define NOM 0
#define PRENOM 1
...
ainsi de suite et comme ceci je sais que la ligne 0 dans le tableau contient un nom, pour pouvoir le modifier dans le tableau et tout réécrire dans un fichier.
Messages postés
1905
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
17 septembre 2012
3
Salut,
Tu charge ton fichier dans ton tableau avec une boucle, (avec fopen, fgets, fclose).
Ensuite tu modifie ta ligne, tu vide le fichier, et tu recopie le tableau dans le fichier.
voila
Messages postés
60
Date d'inscription
dimanche 8 décembre 2002
Statut
Membre
Dernière intervention
1 juillet 2004

Ouai c bon merci.
Seulement maintenant, je sais pas pk, mais lorsque je déclare un fichier pour pouvoir l'utilisé, sa ne fait rien !!!

ofstream fs(nameFile); // il y a prob ici mais je sais pas pk !!

donc je ne peux pas mettre mon tableau en fichier !!!!
Messages postés
1905
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
17 septembre 2012
3
Salut,
Moi je t'ai conseillé fopen fgets et fclose.

FILE * fichier;
fichier = fopen(...);
...
fgets(...);
...
//et a la fin
fclose(fichier);
Messages postés
60
Date d'inscription
dimanche 8 décembre 2002
Statut
Membre
Dernière intervention
1 juillet 2004

G trouvé le prob ! En fait le tableau dans lequel je stock le fichier débordait (a cause de mon algo) et allait se stocker dans le tableau destiné a prendre le nom du fichier ! G réussi a régler ce prob.

Sinon tu connaitrai pas par hasard un truk pour les control de dépassement ? Parce ke, g un tableau de char destiné a prendre le nom d'une personne, seulement, si la personen inscrit un nom plus grand que la capacité du tableau, yaura débordement !! et je veux pas ke sa arrive c galère !
j'utilise cin.getline(nom,20) mais ca na pa l'aire de marcher

Merci quand meme.
Messages postés
1905
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
17 septembre 2012
3
Salut,
ben met cin.getline(nom,256)
Messages postés
60
Date d'inscription
dimanche 8 décembre 2002
Statut
Membre
Dernière intervention
1 juillet 2004

Certe, mais , si le gars met plus de lettre que le tableau de char qui va stocker la phrase, celui ci va déborder, et c ce ke je ne veux pas. Ou dans un autre cas, on prendrai X nbr de char dans le flux, mais le reste ira dans le prochain cin.getline, ce qui est désagréable .

Merci