Fichier ini [Résolu]

Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
- - Dernière réponse : cs_cheyenne
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
- 17 juil. 2011 à 14:06
Bonjour,

Il y a t-il un moyen de récupérer, dans un fichier ini, tous les noms de section en une fois, ou un par un, afin de les afficher dans une ListBox ?

Le nombre de section varie régulièrement et
pour l'instant je splite le fichier sur les crochets.

Merci pour votre aide et bon Dimanche.

Cheyenne
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
207
3
Merci
Bonjour,
Est-ce CECI, que u cherches ?


____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 145 internautes nous ont dit merci ce mois-ci

Commenter la réponse de ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
207
3
Merci
une API du genre DeleteSection
n'existe pas (pas plus, d'ailleurs, qu'existerait un "delete_chaîne_définie" pour le traitement d'un fichier texte plat)
La fonction Replace (que tu pourrais d'ailleurs utiliser après GetPrivateProfileSection ) fait en réalité ce que ferait ce qui est décrit ci-après :

L'effacement se traduit toujours par le mécanisme général :
- lire tout
- effacer tout
- ne réécrire que ce que l'on veut.



____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 145 internautes nous ont dit merci ce mois-ci

Commenter la réponse de ucfoutu
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
0
Merci
Bonjour ucfoutu,

Merci pour ta réponse rapide.

J'ai juste survolé le code, en effet cela doit correspondre à mes besoins.
Je m'y colle dans la soirée ou demain afin de valider ou non ta réponse. Mais à priori c'est OK.

Je te souhaite une bonne soirée.

Amicalement de Cheyenne
Commenter la réponse de cs_cheyenne
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
0
Merci
Re,

Merci, c'est pile-poil ce que je souhaitais

Plus long que mon code qui sert à ouvrir un fichier et qui ne récupère que les lignes commençant par un crochet et de les supprimer pour l'affichage du nom de la section. Mais tellement plus élégant !!!

Pendant que j'y suis, pour supprimer une section, soit j'édite manuellement le fichier avec le bloc-note soit j'ouvre par code le fichier et je supprime les lignes de la section devenue inutile et je réenregistre.

Je n'ai pas trouvé, ou mal cherché, une API permettant de faire cela...

Merci encore.

Cheyenne
Commenter la réponse de cs_cheyenne
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
207
0
Merci
Qu'est effacer dans un fichier ?
Cela se traduit généralement par :
- lire
- effacer tpout
- ne réécrire que ce que l'on veut.

Bien.
- Le code de l'exemple montre comment utiliser la fonction GetPrivateProfileSectionNames de la librairie User32 de l'Api de Windows pour lire les noms de section.
- la librairie User contient d'autres fonctions :
---- GetPrivateProfileSection
---- WritePrivateProfileSection
---- WritePrivateProfileString

dont les noms seuls t'en disent beaucoup !
Pour cependant mieux comprendre :
Va dans le site de AllAPI ===>> ouvre n'importe laquelle de ces 4 fonctions ===>> ouvre et lis l'exemple "INI Files" ===>> et adapte (facile)

____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
Commenter la réponse de ucfoutu
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
0
Merci
Bonjour ucfoutu,

Je me suis servi du lien Codyx que tu m'as fourni et consulté l'exemple dans AllAPI.
Tu me dis : "adapte (facile)", et c'est bien ce que j'ai fait grâce aux API pré-citées dont les noms, je te l'accorde, sont très explicites !.

Ma question était de savoir si il n'existait pas, au cas ou cela m'aurait échappé où qu'elle ne soit pas répertoriée, une API du genre DeleteSection qui permettrait d'effacer une section d'un seul coup sans avoir à manipuler le fichier.

Je te souhaite un bon Dimanche.

Cheyenne
Commenter la réponse de cs_cheyenne
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
0
Merci
Re,

Merci pour cette dernière réponse.
Sujet clos.

Cheyenne
Commenter la réponse de cs_cheyenne