Aide sur les fichiers..

Fermé
littlermak Messages postés 1 Date d'inscription mercredi 22 juin 2016 Statut Membre Dernière intervention 22 juin 2016 - Modifié par baladur13 le 22/06/2016 à 16:58
aebischerle Messages postés 34 Date d'inscription vendredi 5 décembre 2014 Statut Membre Dernière intervention 22 juillet 2016 - 22 juin 2016 à 16:52
Bonjour,


Bonsoir, alors voila j'ai réussi a copier le contenu d'un fichier vers un autre mais maintenant je voudrais faire en sorte que pendant la copie certaines lettres soient ignorées! en gros pour un mot comme "malheur" je voudrais que la lettre, a, e et u ne s'affiche pas dans le fichier copier en gros sa donnera "mlhr", je galère vraiment merci davance!

 #include<stdlib.h>
#include<stdio.h>
#define ENTREE "source.txt"
#define SORTIE "destination.txt"
 
int main(int argc, char *argv[]){
     
    FILE*fichiersource, *fichierdestination;
    int c; 
    if((fichiersource=fopen(ENTREE,"r"))==NULL){
        fprintf(stderr,"\nerreur\n",ENTREE);
    }
    if((fichierdestination=fopen(SORTIE,"w"))==NULL){
        fprintf(stderr,"Erreur\n",\
        SORTIE);
    }
     
     
    while((c=fgetc(fichiersource))!=EOF)
    fputc(c,fichierdestination);
     
    fclose(fichiersource);
    fclose(fichierdestination);
    return(EXIT_SUCCESS);
     
}

EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.
A voir également:

1 réponse

aebischerle Messages postés 34 Date d'inscription vendredi 5 décembre 2014 Statut Membre Dernière intervention 22 juillet 2016 1
Modifié par baladur13 le 22/06/2016 à 16:58
Hello,
un simple test dans ta boucle te permettra d'insérer ou non le caractère dans le fichier de destination, bien-sûr ici je ne test que si ce sont les lettres a, e ou u mais rien ne t'empêche de faire une méthode par exemple pour savoir si le caractère est une voyelle et renvoie un boolean si oui...

while((c=fgetc(fichiersource))!=EOF){
    if(c != 'a' && c != 'e' && c != 'u'){
        fputc(c,fichierdestination);
    }
}
0