Code qui fait rien
Résolu
youpi
-
youpi -
youpi -
Bonjour,
J'ai un probleme avec ma fonction caract_speciaux listée ci dessous.
Quand je compile et que j'appelle l'executable, on ne me renvoie pas d'erreur, mais par contre le code ne fait rien.
Normalement la fonction devrait chaque fichier mail_i.txt (mail_1.txt, ...., mail_290.txt), le parcourt et remplace les =E9 dedans par le caractère 'é'. Mais rien de celà n'est fait ... :(
Je ne vois pas d'ou vient le problème.
Merci pour votre aide.
La fonction est la suivante:
int caract_speciaux(void){
int i;
FILE* f;
char NomDuFichier[255];
char tmp[255];
for(i=1;i<290;i++){
sprintf(NomDuFichier,"mail_%d.txt",i); // NomDuFichier <-- "mail_i.txt"
f=fopen("/...mon chemin...l/NomDuFichier","w+");
sprintf(tmp,"sed -i.bak 's/=E9/é/g' NomDuFichier");
system(tmp);
}
return 0;
}
J'ai un probleme avec ma fonction caract_speciaux listée ci dessous.
Quand je compile et que j'appelle l'executable, on ne me renvoie pas d'erreur, mais par contre le code ne fait rien.
Normalement la fonction devrait chaque fichier mail_i.txt (mail_1.txt, ...., mail_290.txt), le parcourt et remplace les =E9 dedans par le caractère 'é'. Mais rien de celà n'est fait ... :(
Je ne vois pas d'ou vient le problème.
Merci pour votre aide.
La fonction est la suivante:
int caract_speciaux(void){
int i;
FILE* f;
char NomDuFichier[255];
char tmp[255];
for(i=1;i<290;i++){
sprintf(NomDuFichier,"mail_%d.txt",i); // NomDuFichier <-- "mail_i.txt"
f=fopen("/...mon chemin...l/NomDuFichier","w+");
sprintf(tmp,"sed -i.bak 's/=E9/é/g' NomDuFichier");
system(tmp);
}
return 0;
}
A voir également:
- Code qui fait rien
- Code ascii - Guide
- Code puk bloqué - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code activation windows 10 - Guide
- Scanner qr code pc - Guide
1 réponse
il me semblait deja avoir vu ce meme probleme genre hier mais bon...
et si tu fais ça : sprintf(tmp,"sed -i.bak 's/=E9/é/g' %s",NomDuFichier);
à la place de sprintf(tmp,"sed -i.bak 's/=E9/é/g' NomDuFichier");
et pour ça : f=fopen("/...mon chemin...l/NomDuFichier","w+");
ne penses-tu pas avoir un probleme ? NomDuFichier n'est pas interpréter
ce que je te propose c'est de faire un sprintf avant du genre
sprintf(tmp,"/...mon chemin...l/%s",NomDuFichier);
et ensuite
f=fopen(tmp,"w+");
cela fonctionne-t-il ?
bon courage et j'espere t'avoir aider
tchû
et si tu fais ça : sprintf(tmp,"sed -i.bak 's/=E9/é/g' %s",NomDuFichier);
à la place de sprintf(tmp,"sed -i.bak 's/=E9/é/g' NomDuFichier");
et pour ça : f=fopen("/...mon chemin...l/NomDuFichier","w+");
ne penses-tu pas avoir un probleme ? NomDuFichier n'est pas interpréter
ce que je te propose c'est de faire un sprintf avant du genre
sprintf(tmp,"/...mon chemin...l/%s",NomDuFichier);
et ensuite
f=fopen(tmp,"w+");
cela fonctionne-t-il ?
bon courage et j'espere t'avoir aider
tchû
C'et pas grave, de toute facon je laisse tomber cette fonction puisque je viens d'ecrire une fonction qui fait ce que le 'sed' est supposé faire, et qui marche bien.
Merci pour ton aide en tout cas Daronmaster.
A bientot.
P.S: Pour le post en double je suis désolée, j'etais persuadée qu'hier ca n'est pas passé.