Bonjour,

j'aimerai lire dans un fichier une ligne avec fscanf mais je n'y arrive pas (correctement tout du moins...)

Le fichier s'appelle networks et respecte le format suivant:
<site1_192.168.1.0_255.255.255.0>
<site2_192.168.2.0_255.255.255.0>

mon code est le suivant (pour lire au moins la première ligne):

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
 
 
 fd=fopen("/home/networks","r");
 
 if(fd<0)
   exit(-1);
 
 //printf("ok\n");
 
 char site[128];
 char netw[20];
 char netm[20];
 fscanf(fd,"<%s_%s_%s>",site,netw,netm);
 printf("site=%s, netw=%s, netm=%s",site,netw,netm);
 fclose(fd);
je voudrai site=machine1, netw=192.168.1.0, netm=255.255.248.0

mais au lieu de cela j'ai :

site=machine1_192.168.1.0_255.255.248.0>, netw=����, netm=

peut être que je n'utilise pas correctement fscanf?