Classe de gestion de fichier de type ini (chargement/sauvegarde de fichier texte contenant des sections)

Soyez le premier à donner votre avis sur cette source.

Vue 8 810 fois - Téléchargée 946 fois

Description

Pour être bref, un fichier INI est un fichier texte contenant des sections dont le libellé est entre crochets []
dans chaque section vous avec des paires clef = valeur
chaque section est unique (la casse est respectée)
chaque clef est unique dans une même section

La classe CINI_File sert à gérer un fichier INI existant ou à créer
Elle permet de charger et de sauvegarder des données comme on les trouve dans les fichiers INI
- CreateSection sert à créer une section ou à en récupérer une existante (retourne un pointeur sur CINI_Section)
- LookupSection permet de savoir si une section existe et de récupérer le pointeur sur celle-ci
- GetSectionsCount permet de savoir combien on a de sections
- GetSectionAt permet de parcourir les sections dans l'ordre
les sections ajoutées le sont dans un ordre qui est conservé

La classe CINI_Section gère une section
Elle mémorise chaque clef et la valeur qui lui est associée en conservant l'ordre dans lequel elles ont été transmises
- SetKey permet d'ajouter une clef et sa valeur ou de modifier la valeur d'une clef existante
- LookupKey permet de connaitre l'existance d'une clef et de récupérer sa valeur
- GetKeysCount renvoie le nombre de clefs dans la section
- GetKeyAt permet de parcourir les clefs dans l'ordre
les clefs ajoutées le sont dans un ordre qui est conservé

Le code est commenté et compatible avec DOxygen pour la génération automatique d'une doc

Conclusion :


Je n'ai pas mis de méthode de modification de l'ordre des clefs ou des sections vu que je n'en avais pas besoin
Le code utilise la STL et ne comporte pas de bug connu
Si malgrès tout vous rencontrez un soucis n'hésitez pas à m'en faire part

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

shenron666
Messages postés
229
Date d'inscription
dimanche 14 septembre 2003
Statut
Membre
Dernière intervention
20 août 2014
-
Salut, non ce n'est pas prévu, en plus je suis passé au xml, plus souple à gérer ;)
Nerolph
Messages postés
60
Date d'inscription
vendredi 24 octobre 2003
Statut
Membre
Dernière intervention
4 septembre 2012
-
Oups, j'ai oublié de te mettre une note ! ^_^'
Nerolph
Messages postés
60
Date d'inscription
vendredi 24 octobre 2003
Statut
Membre
Dernière intervention
4 septembre 2012
-
Est-ce que la gestion de plusieurs clés de même nom sera prévue ?
Exemple d'un tel fichier .ini : php.ini (pour l'activation des extensions).
shenron666
Messages postés
229
Date d'inscription
dimanche 14 septembre 2003
Statut
Membre
Dernière intervention
20 août 2014
-
j'ai fait l'effort de mettre à jour ma source
tu peux la récupérer telle que maintenant
bon courage ;-)
turnerom
Messages postés
492
Date d'inscription
samedi 10 juillet 2004
Statut
Membre
Dernière intervention
12 janvier 2012
1 -
Sans cette ligne, le code ne compile pas, de mémoire je crois que ca met ASSERT undefined

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.