Moteur de recherche dans un fichier ini

skunsky Messages postés 26 Date d'inscription samedi 29 mai 2004 Statut Membre Dernière intervention 3 juillet 2004 - 24 juin 2004 à 12:01
skunsky Messages postés 26 Date d'inscription samedi 29 mai 2004 Statut Membre Dernière intervention 3 juillet 2004 - 27 juin 2004 à 15:33
Bojour a tous,
J ai un probleme et je galere dessus depuis longtemps. Je stock dans un fichier ini une variable en section et je lui assigne une valeur comme
[variable 1]
key= val1
[variable 2]
key=val2
...

sachant que tous les noms de variable et les key sont toutes differentes je voudrais pouvoir rechercher soit les noms de section et obtenir la valeur correspondante, soit recherché par key et obtenir le nom de la section. en gros un petit moteur de recherche qui cherche soit par key soit par [nom de section].
J espere avoir ete assez clair.
je vous remercie d avance de votre aide

P.S: je travaile sous borland c++ builder 6.0

13 réponses

cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 1
24 juin 2004 à 12:57
Tu lis ton fichier, stocke une ligne dans un buffer, et tu fais appel a la fonction strstr(const char *str1, const char *str2) ki renvoie l'adresse de la premiere ocurence de str2 ds str1...

voila, ++.

Alhexman
0
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
24 juin 2004 à 13:30
en API WIn32 des fct font le boulot :
GetPrivateProfileInt,
GetPrivateProfileSection,
GetPrivateProfileSectionNames,
GetPrivateProfileString,
0
skunsky Messages postés 26 Date d'inscription samedi 29 mai 2004 Statut Membre Dernière intervention 3 juillet 2004
24 juin 2004 à 16:13
Merci de votre aide!
mais helas je bloque encore!!! je ne connaissais pas ces API et je ne sais pas comment m en servir..... (je suis un debutant !!!un vrai!!!) Est ce que quelqu un pourrait m expliquer ou me donner un site ou ces API sont expliqué?
merci encore
0
cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 1
24 juin 2004 à 16:30
le référence ke lon doit connaitre absolument si on veut coder avec les API : msdn.microsoft.com

Merci Microsoft !!

++

Alhexman
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
skunsky Messages postés 26 Date d'inscription samedi 29 mai 2004 Statut Membre Dernière intervention 3 juillet 2004
24 juin 2004 à 18:01
deja encore un merci pour votre aide!!
ensuite je suis encore plus nul en anglais qu en programmation (c est dire!!!). En fait je comprends quand meme 2,3 trucs mais pour l utilisation de ces fonctions...je suis toujours bloqué. Il n existerait pas la MSDN en français ou encore mieux existerait t il une personne qui pourrait m expliquer ces API (ce que l on doit mettre en parametre, a quoi ça sert,...)

merci encore
0
cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 1
24 juin 2004 à 18:40
UINT GetPrivateProfileInt(LPCTSTR, LPCTSTR, int, LPCTSTR);

1ere param = Nom de la section dans lakel chercher la valeur
2eme param = Nom de la clé pour lakel chercher la valeur
3eme param = valeur par defaut ke doit renvoyer la fonction si elle ne trouve pas la clé
4eme param = adresse du fichier

Valeur de retour = Conversion de la chaine de caractere suivant la clé en unsigned int

Voila, je pense ke c ske tu cherchais...

++

Alhexman

PS = il existe une mini bibliotheque des api en francais mais destiné aux programmeurs VB : api guide, ou encore une ke j'ai decouverte recemment et ki est assez complete : Progotop api viewer...
0
skunsky Messages postés 26 Date d'inscription samedi 29 mai 2004 Statut Membre Dernière intervention 3 juillet 2004
24 juin 2004 à 18:57
Merci Alhexman, t a raison c est ça que je cherchais!!!!!
Mais j ai encore un probleme (et ouais je suis tres chiant!). cette fonction permet d avoir la valeur d un clé pour une section donné mais moi je voudrais comparé un chiffre avec LA cles de TOUTES les sections. J esperer que tu vois ce que je veux dire...il faudrait alors que je fasse une boucle?

Et a propos des mini blibliotheque en francçais t aurait pas quelques adresses?

Merci 1000 fois pour ton aide
0
cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 1
24 juin 2004 à 19:06
Il faut pour cela ke tu connaisses toutes les sections dans leskel chercher cette clé et evidemment faire une ptite boucle...
Api - guide = http://www.mentalis.org/agnet/apiguide.shtml
mais dsl elle est en anglais...

Progotop Api viewer = http://www.progotop.com/popapi/
Celle-ci est bien en francais...

Voila

++

Alhexman
0
skunsky Messages postés 26 Date d'inscription samedi 29 mai 2004 Statut Membre Dernière intervention 3 juillet 2004
24 juin 2004 à 20:50
mais alors si je comprends bien ce n est pas cette api que je devrais utiliser car je dois chercher dans TOUTES les sections (et donc je peux pas fournir les noms des sections) la valeur.Mais alors quelle focntion me permettrai de faire ça???

Merci pour les adresses je vais jeter un coup d'oeil....
0
cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 1
24 juin 2004 à 21:00
ben tu fais un tab a 2dimensions contenant les noms de toutes les section, puis une ptite boucle for comme suit :

for (i = 0; i < NBRE_SECTION; ++i) {
val = GetPrivateProfileInt(sections[i]...);
}

Voila, donc tu dois bien utiliser cette fonction

++

Alhexman
0
skunsky Messages postés 26 Date d'inscription samedi 29 mai 2004 Statut Membre Dernière intervention 3 juillet 2004
25 juin 2004 à 14:15
....
ça va t a l air calé en programmation!!!
je t explike mon projet peut etre que t aurait une meilleur idéee pour le stockage des données et comment les retrouver facilement.
En fait je voudrais gerer mes films: c est a dire que je stocke le nom du film et un chiffre qui me permet de les retrouver. apres je voudrais pouvoir savoir quelle film et en telle position ou telle position correspond a telle film (si tu vois ce que je veux dire).
Au debut je voulais utiliser une base de donnée mais on m a conseillé (d autant plus ke je suis debutant) de stocker ça dans un fichier ini...(peut etre ce n est pas la meilleur solution?)

est ce que t aurait une meilleur idée pour stocker tous ça?

merci de prendre du temps pour m aider c est sympa de ta part.
@+
0
cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 1
26 juin 2004 à 19:11
A premiere vue, ton pb ferait plutot penser aux bases de données, mais si tu préfères utiliser un fichier .ini, c kom tu veux !

++

Alhexman
0
skunsky Messages postés 26 Date d'inscription samedi 29 mai 2004 Statut Membre Dernière intervention 3 juillet 2004
27 juin 2004 à 15:33
Salut alexman,
en effet c est ce qu on vient de me conseiller... je crois que je vais utiliser une base de donnée access. je me suis renseigné et ça pas l air si compliqué...
desole de t avoir embété avec mon probleme de fichier ini.
Je te remercie (et ymca2003 aussi) de m avoir repondu. C est beau l entraide des developeurs!!!! :big)
Bonne prog a tous et peut etre a bientot sur un autre forum!!
@+
0
Rejoignez-nous