Code qui marche pas ...
Youpi
-
daronmaster Messages postés 326 Date d'inscription Statut Membre Dernière intervention -
daronmaster Messages postés 326 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'aurai besoin d'aide sur un petit code.
La fonction caract_speciaux ci dessous est supposé ouvrir un dossier qui contient plusieurs fichiers mail_1.txt, mail_3.txt, ..., mail_290.txt , appliquer l'instruction bash "sed -i.bak 's/=E9/é/g' NomDuFichier" qui remplace les =E9 par 'é' dans ces fichiers...mais quand j'exectue ca ne me fait rien du tout (et ca renvoie pas d'erreurs). :( je comprends pas d'ou vient le probleme.Est ce que queqluq un pourrait m'indiquer l'erreur ?
Merci
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("/...monchemin.../NomDuFichier","w+");
sprintf(tmp,"sed -i.bak 's/=E9/é/g' NomDuFichier");
system(tmp);
}
return 0;
}
J'aurai besoin d'aide sur un petit code.
La fonction caract_speciaux ci dessous est supposé ouvrir un dossier qui contient plusieurs fichiers mail_1.txt, mail_3.txt, ..., mail_290.txt , appliquer l'instruction bash "sed -i.bak 's/=E9/é/g' NomDuFichier" qui remplace les =E9 par 'é' dans ces fichiers...mais quand j'exectue ca ne me fait rien du tout (et ca renvoie pas d'erreurs). :( je comprends pas d'ou vient le probleme.Est ce que queqluq un pourrait m'indiquer l'erreur ?
Merci
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("/...monchemin.../NomDuFichier","w+");
sprintf(tmp,"sed -i.bak 's/=E9/é/g' NomDuFichier");
system(tmp);
}
return 0;
}
A voir également:
- Code qui marche pas ...
- 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
si je comprend bien tu lance une commande system effectuant des modif dans le fichier passé en parametre ?
pourquoi fais tu cela : sprintf(tmp,"sed -i.bak 's/=E9/é/g' NomDuFichier");
ne serait-ce pas cela ? -> sprintf(tmp,"sed -i.bak 's/=E9/é/g' %s", NomDuFichier);
et s'il existe encore un probleme peut etre est-ce du à d'eventuels verrou poser par ton programme en ecriture enfin regarde d'abord ce que je t'ai mis et reviens voir ce qu'il en ai...
tchû
pourquoi fais tu cela : sprintf(tmp,"sed -i.bak 's/=E9/é/g' NomDuFichier");
ne serait-ce pas cela ? -> sprintf(tmp,"sed -i.bak 's/=E9/é/g' %s", NomDuFichier);
et s'il existe encore un probleme peut etre est-ce du à d'eventuels verrou poser par ton programme en ecriture enfin regarde d'abord ce que je t'ai mis et reviens voir ce qu'il en ai...
tchû