begin process at 2010 02 10 12:58:58
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Fichiers / Disque

 > GESTION DE FICHIER .INI EN C SOUS LINUX COMME SOUS WINDOWS

GESTION DE FICHIER .INI EN C SOUS LINUX COMME SOUS WINDOWS


 Information sur la source

Note :
9,67 / 10 - par 3 personnes
9,67 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Fichiers / Disque Niveau :Initié Date de création :31/10/2003 Date de mise à jour :23/04/2004 19:28:00 Vu / téléchargé :3 579 / 647

Auteur : squale

Ecrire un message privé
Site perso
Commentaire sur cette source (8)
Ajouter un commentaire et/ou une note

 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

[sec tion2]
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

  • 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 !!
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 !!


 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources de la même categorie

Source avec Zip Source avec une capture ID3 TAG COVER ALBUM IMAGE par nanonavich
FILEREADER par FrancoisGauthier
Source avec Zip CLASSE AVANCÉE DE LOG, THREAD SAFE ET DIVERSES SURCHARGES par sboli
Source avec Zip Source avec une capture Source .NET (Dotnet) INFILESEEKER par swonder
Source avec Zip Source avec une capture USB DETECTION par abandonware

Commentaires et avis

Commentaire de beeline le 23/04/2004 19:07:01

cle1:valeur1 ????

c'est pas deux point c'est un égale ( cle1=valeur1 ) ... sous windoze en tout cas.

est ce que ta source prende le égale ou le deux point ?

Commentaire de squale le 23/04/2004 19:24:43

Mon code source gère bien le '=', c'est une erreur au niveau de mon commentaire.
Si vous avez des soucis pour l'utiliser n'hésitez pas.

Bon usage

Commentaire de aerith le 10/06/2004 11:00:35

vraiment tres simpa, tu vien de m'eviter un sacrer boulo
les execeptions rende le code assez complex mais bon

#define ENDTRY   break;   default:; \ <= manquai le ;
  }   pop_exc(exc);   };

mici ++

Commentaire de squale le 10/06/2004 13:22:11

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)

Commentaire de squale le 10/06/2004 13:23:21

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)

Commentaire de kitutou le 07/09/2004 18:24:28

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

Commentaire de crokmitaine le 21/04/2005 12:15:42

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

Commentaire de beeline le 21/04/2005 13:30:51

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

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix


HTC Magic

Entre 429€ et 429€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,702 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales