Salut :
Je suis en train de travailler sur des structures comportant des champs de caracteres comme ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
typedef struct perso {
                gchar *nom;
                gchar *prenom ;
                gchar *telephone ;
                                      }bloc ;
Et je désire les ecrire dans un fichier binaire, normalement avec (fwrite), et puis les reccuperer avec (fread) , et mettre le resultat dans un fichier (texte.txt) pour l'afficher dans un (text view)et la c'est le probleme , car fputs utilise une chaine de char et moi j'en ai une chaine gchar, alors comment je fais ?
Voila une partie du 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
void cb_consulter (GtkWidget *widget, gpointer data)
{
    FILE *texte = NULL ;
    FILE *fichier = NULL;
 
    bloc *temp  = NULL ;
    gchar nombre ;
    const gchar *nom , *prenom , *tel ;
    int x=0;
 
    temp = (struct perso*) malloc (sizeof (struct perso));
 
    fichier = fopen ("repp","r");
 
 
 
                          while (fread(temp,sizeof(bloc),1,fichier),!feof(fichier))
 
                          {
                           nom    =   temp->nom ;
                           prenom =   temp->nom ;
                           tel    =   temp->nom ;
                           fputs(nom,texte);
                           fputs(prenom,texte);
                           fputs(tel,texte);
 
                            x++ ;
                           }
                           nombre = x ;
 
                           free(temp);
 
                           fclose(fichier);
 
                           open(widget,texte);
 
 
 
};