Récupération de valeurs dans un fichier ini en langage C ????

Résolu
guignol71 Messages postés 29 Date d'inscription jeudi 19 mai 2005 Statut Membre Dernière intervention 10 janvier 2011 - 19 mai 2005 à 15:34
guignol71 Messages postés 29 Date d'inscription jeudi 19 mai 2005 Statut Membre Dernière intervention 10 janvier 2011 - 20 mai 2005 à 08:23
Comment récupérer le plus simplement possible les valeurs d'un fichier ini en langage c et sans utiliser les API windows?



merci de votre aide!



Guignol71

2 réponses

vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
19 mai 2005 à 16:06
Je ne connais pas exactement la structure de ces fichiers, mais j'imagine que ce revient à chercher des '[', ']' et '='.

Entre un debut de ligne qui ne commence pas par [ et un = tu as le nom
de la valeur, puis après le = jusqu'à la fin de la ligne tu as la valeur



Par exemple si tu as lu ton fichier dans une zone mémoire buffer:



char* p = buffer;

while(*p)

{

if(*p '[') p strchr("\n");

else

{

char* q = strchr(p, '='); *q = 0;

strcpy(nom, p);

p q + 1; // on se place juste après le

q strchr(p, '\n'); *q 0;

strcpy(valeur, p);

p = q + 1;

}



Il faut en plus gérer les espaces éventuels, ou les lignes vides
3
guignol71 Messages postés 29 Date d'inscription jeudi 19 mai 2005 Statut Membre Dernière intervention 10 janvier 2011
20 mai 2005 à 08:23
Okay merci pour tout!
3
Rejoignez-nous