XorCo
Messages postés11Date d'inscriptionmercredi 14 avril 2004StatutMembreDernière intervention22 septembre 2004
-
18 sept. 2004 à 20:28
cs_djl
Messages postés3011Date d'inscriptionjeudi 26 septembre 2002StatutMembreDernière intervention27 novembre 2004
-
18 sept. 2004 à 23:37
Voilà le but est que je puisse modifier un fichier .. donc le lire et dès que j'arrive à un char spécifique je dois écrire qqchose.
Je suppose que je dois faire ça plus ou moin comme ça ... mais ça ne marche pas...
flot = fopen("fichier.txt","r+");
while ( c= fgetc(flot),c!=EOF ) {
if ( c == 'F' ) { // Des que char arrive à la lettre F
fputs(modif,flot); // J'écrit
fflush(flot); // Je fais le transfer
fclose(flot); // Je ferme le fichier
}
}
Pspice
Messages postés12Date d'inscriptiondimanche 3 août 2003StatutMembreDernière intervention 2 décembre 2004 18 sept. 2004 à 20:42
Slt, je suis pas trop sur, mais je crois pas que tu puisse insere des carcateres, je te conseille plutot d'ouvrir ton fichier, et d'en faire une copie jusqua la lettre F ensuite tu rajoute ce ke tu veux ecrire et tu reprends la copie si besoin est.
Pspice
Messages postés12Date d'inscriptiondimanche 3 août 2003StatutMembreDernière intervention 2 décembre 2004 18 sept. 2004 à 20:48
excuse je me suis peut-etre mal expliqué, je voulais dire que tu crée un autre fichier et que tu copie le contenu de ton fichier initial ds le nveau jusqua la lettre F...
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 18 sept. 2004 à 20:59
while ( c= fgetc(flot),c!=EOF )
-> ca marche, mais je trouve pas ca très élégant: que vaut cette expression?
En fait tu n'a pas dit si tu veux insérer (dans ce cas il faut en effet créer un nouveau fichier), ou bien écraser (dans ce cas c'est bon, mais sort de la boucle quand tu trouves 'F').
Vous n’avez pas trouvé la réponse que vous recherchez ?
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 18 sept. 2004 à 23:01
Comme Pspice te l'a dit au début, tu vas devoir créer un nouveau fichier (t'iamgine le bordel si on pouvait insérer des caractères comme ca n'importe ou??). Tu copie ce qui t'arrange (les noms) et après chaque nom tu écris l'age.
XorCo
Messages postés11Date d'inscriptionmercredi 14 avril 2004StatutMembreDernière intervention22 septembre 2004 18 sept. 2004 à 23:05
Bon oki ... je vais tenter ça,
Cela dit mon truc était quand-même bien imaginer .. et je ne vois pas du tout prq ce serrait le bordel. Au contraire ... ce serrait bien plus facile. Tu lis chaque char avec un while et dès que t'arrive à une place spécifique tu peux mettre ce que tu veux.
Enfin bon .. ça n'existe pas, tant pis.
En tout cas merci à tous !
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 18 sept. 2004 à 23:15
Ca serait le bordel sur le disque dur: des que un insères un caractère, il faut décaler tous les suivants, ce serait bien plus long que de créer un nouveau fichier