Bonjour

Voila j'ai fait une procédure qui copie un fichier et qui ajoute +1 à chaque caractère du fichier, en le copiant dans un autre fichier.
Seulement j'ai un problème c'est que à la fin du fichier il m'ajoute toujours 1 caractère en plus, alors qu'il n'est pas dans le fichier orignal.

Cela m'arrive aussi quand je fais une copie intacte d'un fichier.

Voici le code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
void cryptage()
{
 FILE *fichier=NULL;
 FILE *fichierCrypter=NULL;
 char caractere;
 
 fichier=fopen("ess.txt","r");
 
 
 if(fichier!=NULL)
    {
    fichierCrypter=fopen("crypter.txt","w");
    if(fichierCrypter!=NULL)
        {
           while(!feof(fichier))
           {
            fread(&caractere,sizeof(caractere),1,fichier);
            caractere++;
            fwrite(&caractere,sizeof(caractere),1,fichierCrypter);
           }
 
        }
        else
        {
         printf("Erreur sur fichierCrypter\n");
        }
    }
    else
    {
     printf("Erreur sur fichier\n");
    }
    fclose(fichier);
    fclose(fichierCrypter);
}
Merci d'avance.