Parser un fichier de configuration de type ini
Bonjour,
J'ai un programme qui possède différentes variables configurables.
Pour éviter d'avoir ces variables écrite en dur dans le code, je voulais faire un fichier texte de configuration de type fichier ini.
voici ce fichier :
Citation:
chemin_apps_scanner=\\akffs10\\UNIX\AFN\install_OCS_inventory\ocs-ng\OCSInventory.exe
options_apps_scanner=/SERVER
chemin_fichier_materiel=computer.txt
Pour parser ce fichier j'ai réalisé ceci :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| #include <stdio.h>
#define TAILLE_CONFIG 100
void parseur_config()
{
FILE* fichier = NULL;
char CONFIG[TAILLE_CONFIG] = "";
fichier = fopen("config_scanner.ini", "r");
if (fichier != NULL)
{
while (fgets(CONFIG, TAILLE_CONFIG, fichier) != NULL) // On lit le fichier tant qu'on ne reçoit pas d'erreur (NULL)
{
// On Supprime les caractères de saut de ligne
if (CONFIG[strlen(CONFIG) - 1] == '\n')
{
CONFIG[strlen(CONFIG) - 1] = '\0';
}
printf("%s \n",CONFIG);
}
fclose(fichier);
}
} |
J'ai lu sur des forums que je peux utiliser les fonctions
Citation:
Avec "fgets()" tu récupères chaque ligne, avec "strchr()" tu positionnes un pointeur sur le "=" de la ligne (ou sur le caractère juste après ce "=" )
Ensuite, avec "strncmp()" tu peux comparer le début de ta ligne
Le soucie c'est que je ne comprend pas comment utilisé ces trois fonctions...
Auriez vous des idées de code ?
Merci d'avance
Arnaud