Gestion de fichier .ini en c sous linux comme sous windows

Soyez le premier à donner votre avis sur cette source.

Vue 8 631 fois - Téléchargée 937 fois

Description

La présentation et la gestion des fichiers .ini sous windows était intéressante. J'ai fait une bibliothèque pour les gérer facilement. Le principe est d'avoir un fichier sous la forme:

[section1]
cle1=valeur1
cle2=valeur2

[section2]
cle1=valeur1
cle2=valeur2

Il fallait pouvoir ajouter, modifier (writeINI), supprimer(delINI) et récupérer (readINI) la valeur d'une cle facilement, pour cela 3 fonctions:

char *writeINI (char *section, char *key, char *pKeyValue, char *fileName);

int delINI (char *sectionName, char *pKeyName, char **ppStr, char *fileName);

int readINI (char *section, char *key, char **ppStr, char *fileName);

Les paramètres sont tjs dans le meme ordre: section, clé, valeur, nom du fichier.
ATTENTION: dans readINI et delINI le 3eme parametre est un pointeur de pointeur, c'est pour récupérer la clé!!!

Pour plus de détails voir les commentaires dans le source.

J'ai livré avec le code un fichier test_filetools.c et un Makefile générique avec un exemple d'utilisation.

N'hésitez pas à me contacter en cas de problème

Source / Exemple :


4 fichiers à inclure dans vos projets:

/** une gestion d'exception récupérée dans un Hors Série LOGIN **/
exception.h
exception.c

/** ma gestion des .ini **/
filetools.h
filetools.c

tous est dans le zip !!

Codes Sources

A voir également

Ajouter un commentaire Commentaires
beeline Messages postés 83 Date d'inscription jeudi 20 décembre 2001 Statut Membre Dernière intervention 9 juin 2009
21 avril 2005 à 13:30
je ne comprend pas ton message, la source est toujours disponible, je vient de pouvoir la telecharger

(il faut avoir un compte et s'enregistrer ... )

Baptiste
Maintenant, comme je suis gentil (meme trop ...)
je te l'envoie, mais sans comprendre
crokmitaine Messages postés 1 Date d'inscription dimanche 20 mars 2005 Statut Membre Dernière intervention 21 avril 2005
21 avril 2005 à 12:15
salut!
Bon je vai être rapide:
J'ai absolument besoin de cette source et elle n'est apparemment plus disponible
est-ce que quelqu'un qui par chance lirai mon message et qui se trouve en posséssion de cette source pourrait me l'envoyer:
crok@freesurf.fr !!
merci
cs_kitutou Messages postés 1 Date d'inscription dimanche 2 mars 2003 Statut Membre Dernière intervention 7 septembre 2004
7 sept. 2004 à 18:24
Bonjour, très bonne source et très utile, pour une fois pas dépendante d'un quelconque compilo...

qq mini "bugs" :
- oublie de "pSectionName[offset - 1]='\0';" dans la fonction delIni
- "return 0;" dans saveIni
- comme déjà dit, certains compilo demandent un ";" apres "default:" dans la macro ENDTRY
cs_squale Messages postés 44 Date d'inscription mardi 24 octobre 2000 Statut Membre Dernière intervention 20 septembre 2006 1
10 juin 2004 à 13:23
Je suis content que ça serve à qq'un. Pour ta remarque concernant le ';' effectivement il y en a besoin en fonction des compilateurs. Je prévois de le rajouter. La gestion des exception permet d'avoir un code fiable.

Je compte améliorer cette bibliotheque en apportant:
- modification de la fonction writeINI en modifiant le parametre pKeyValue en pointeur de pointeur afin que toutes les parametres de toutes les fonctions soient de meme type,
- une gestion des commentaires dans le fichier (ajout et suppression au minimum et peut-etre modification)
cs_squale Messages postés 44 Date d'inscription mardi 24 octobre 2000 Statut Membre Dernière intervention 20 septembre 2006 1
10 juin 2004 à 13:22
Je suis content que ça serve à qq'un. Pour ta remarque concernant le ';' effectivement il y en a besoin en fonction des compilateurs. Je prévois de le rajouter. La gestion des exception permet d'avoir un code fiable.

Je compte améliorer cette bibliotheque en apportant:
- modification de la fonction writeINI en modifiant le parametre pKeyValue en pointeur de pointeur afin que toutes les parametres de toutes les fonctions soient de meme type,
- une gestion des commentaires dans le fichier (ajout et suppression au minimum et peut-etre modification)
Afficher les 8 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.