Remplacement mot dans un fichier

cs_nach73 Messages postés 34 Date d'inscription dimanche 24 avril 2005 Statut Membre Dernière intervention 18 mai 2005 - 17 mai 2005 à 16:17
cs_nach73 Messages postés 34 Date d'inscription dimanche 24 avril 2005 Statut Membre Dernière intervention 18 mai 2005 - 18 mai 2005 à 17:46
voila je me casse la tete pour creer un prog qui me permet
de changer un mot qui se trouve dans un fichier par un autre.
Evidement qui me change tout les mots rechercher par l'autre mot.
Je ne vois pas comment y arriver.
Ou peut etre trouve une source qui me montre comment faire.
J'aimerais un peux d'aide merci.

7 réponses

cs_LordBob Messages postés 2865 Date d'inscription samedi 2 novembre 2002 Statut Membre Dernière intervention 11 mai 2009 9
18 mai 2005 à 15:49
en fait tu veux que le programme remplace tout les mots X par un mot Y?
ou tu veux seulement remplacer un mot X précis par un mot Y ?
si c'est bien ca je veux bien essayer de t'aider et te faire une source.
Bob...

"La chance accorde ses faveur aux esprits avertis..."
0
cs_nach73 Messages postés 34 Date d'inscription dimanche 24 avril 2005 Statut Membre Dernière intervention 18 mai 2005
18 mai 2005 à 15:53
merci, en fait je veux que y remplcace tout les x dans fichier.
0
cs_nach73 Messages postés 34 Date d'inscription dimanche 24 avril 2005 Statut Membre Dernière intervention 18 mai 2005
18 mai 2005 à 15:56
Un exemple est plus parlant : je rentre "chaine" mot a remplace
par "&&&&", tout les mots chaine seront remplace par &&&&
0
cs_LordBob Messages postés 2865 Date d'inscription samedi 2 novembre 2002 Statut Membre Dernière intervention 11 mai 2009 9
18 mai 2005 à 17:18
bah sinon tu peux essayer de faire le programme toi meme...
regarde une astuce, tu lis ton fichier mot par mot, a chaque mot lu tu le recopie dans un fichier de "sortie" si il est différent du mot X, sinon, bah tu recopie le mot Y...
essai de le faire tout seul, ca utilise des fonctions de bases du C, et ne devrait pas être si compliqué que cela a faire.
Bob...

"La chance accorde ses faveur aux esprits avertis..."
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_nach73 Messages postés 34 Date d'inscription dimanche 24 avril 2005 Statut Membre Dernière intervention 18 mai 2005
18 mai 2005 à 17:23
En fait j'utilise une fonction qui me cherche la position du mot.
Une fois repere il me la renvoie, je lis avec fread jusqu'a la position et je recopie avec fwrite, ainsi de suite .Mais ca ne fonctionne pas.
0
cs_LordBob Messages postés 2865 Date d'inscription samedi 2 novembre 2002 Statut Membre Dernière intervention 11 mai 2009 9
18 mai 2005 à 17:36
montre nous ton code si tu veux que l'on puisse t'aider !
Bob...

"La chance accorde ses faveur aux esprits avertis..."
0
cs_nach73 Messages postés 34 Date d'inscription dimanche 24 avril 2005 Statut Membre Dernière intervention 18 mai 2005
18 mai 2005 à 17:46
le voila, je previens je ne comprend pas tout les subtilitées de fread et fwrite.
Si tu peux m'aider ca serais vraiment genial.
Merci de regarde.

long PremCarPos (char *ch, FILE *f,long Depart)
{
char c,nvLigne [TAILLE];
int i=0,t,n;
char *l;
t=strlen(ch);
fseek(f,Depart,SEEK_SET);

while(! feof(f))
{
c=fgetc(f);
nvLigne[i]=c;
i++;
l=strstr(nvLigne,ch);
n=strlen(nvLigne);
Depart=n-t-1;
if (l != NULL)
{
VideChaine(nvLigne);
return (Depart);
}

}

return 0;
}
void ModificationFichier (char *ch1,char *ch2,FILE *fd,FILE *ftmp)
{
int Lch2;
long Depart=0,length;
char *memoir;
memoir=(char*)malloc(TAILLE);
Depart=0;
Lch2=strlen(ch2);
Depart=PremCarPos(ch1,fd,Depart);

while(!feof(fd));
{
length=fread(memoir,1,Depart,fd);
fwrite(memoir,1,length,ftmp);
fwrite(ch2,1,Lch2,ftmp);
Depart=Depart+Lch2;
Depart=PremCarPos(ch1,fd,Depart);
fseek(fs,Depart,SEEK_SET);
}

free(memoir);
return ;
}
0
Rejoignez-nous