Bonjour,

J'aimerais faire un programme en c qui lit dans un fichier texte des données puis qui reprend ces données et les ecris dans un autre fichier texte. J'arrive à lire les données mais pas à les réécrire dans un autre fichier. J'aurais besoin d'un coup de pouce.

voici mon 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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
 
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
char ** lecture_fichier(FILE *,char *);
void afficher_lecture(char **);
 
int main(void)
{
 
char tableau[20];
FILE *f1;
FILE *f3;
char **matrice_lecture;
char **matrice_ecriture;
 
f1=fopen("f1.txt","r");
     if(f1==0){printf("Il n'y a pas de fichier f1");}
 
matrice_lecture=lecture_fichier(f1,tableau);
 
fclose(f1);
 
/*f3=fopen("f3.txt","a");
matrice_ecriture=lecture_fichier(f3,tableau);
 
fclose(f3);
*/
 
afficher_lecture(matrice_lecture);
 
printf("\n\n");
system("pause");
 
}
 
char ** lecture_fichier(FILE *f,char *t)
{
 
static char* p[6];
int i;
 
     for(i=0;i<6;i++)
     {
            p[i]=(char*)malloc(24);
     }
 
     i=0;
     while(fgets(t,50,f)!=0)
     {
            strcpy(p[i],t);
            i++;
     }
 
return(p);   
 
}
 
void afficher_lecture(char **m)
{
     int i=0;
     while(i<6)
     {    
         printf("%s\n",m[i]);
         i++;
     }
}
le fichier texte en question est de la forme :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
DUPOND              2002
MARTINI             2120
DURANDAL            2206
DUBESSON            1913
YACA                1801
SOLORA              2013
apres avoir lu les données du fichier f1.txt, j'ai essayé de réutilisé ma fonction lecture_fichier pour les écrire dans le fichier f3.txt mais il m'affiche êM> à la place et il n'écris rien.

En faite vu que les données sont écris dans la mémoire avec le malloc, il y a moyen de les récupérer pour les réécrire.

merci d'avance

tchao