Petite gestion de fichier xml utilisant le dom en vb6 - tutoriel exemple.

Description

Xml est particulièrement intéressant pour gérer des fichiers à structure dynamique.
Par exemple : dans un fichier de personnes, je veux stocker des adresses mél. A priori, je ne sais pas combien d'adresses chaque personne possède. Dans une structure classique de fichier à accès direct, je prévois 5 champs pour être tranquille avec le risque d'être bloqué si une personne en possède davantage. Ou bien, je crée un champ texte dans lequel je concatène toutes les adresses en utilisant un sépérateur pour les récupérer ensuite. Il faut
néanmoins que je définisse une taille fixe pour ce champ texte et je retombe dans le même problème que pour le nombre de champs, c'est à dire de ne pas avoir suffisamment de place ou au contraire d'en gaspiller pour rien.
Dans un fichier xml, je vais pouvoir définir pour chaque utilisateur un noeud (l'équivalent de l'adresse d'un champ - ou même d'une liste de champs) pour les Méls et ce noeud contiendra autant de sous-noeuds (on dira plutôt de fils) Adresse que nécessaire (aussi bien 0 que 50 si la nécessité l'impose).
Je n'insisterai pas sur les autres intérêts de l'xml comme la naturelle structuration hiérarchique des données, les possibilités d'échange ou de récupération facilitées (essayez donc de faire une moulinette pour récupérer des données dans un fichier à accès direct dont vous ne connaissez pas la structure ni le source du programme qui a servi à le constituer ! En xml, la structure apparaît clairement dans n'importe quel Navigateur Web récent par un simple double-clic sur le nom du fichier).
Comme j'ai eu du mal à trouver des articles assez complets sur la syntaxe du DOM de Microsoft (les articles ID=5471 et ID=26155 de vbfrance m'ont beaucoup aidé - merci à leurs auteurs) et que j'ai pas mal tatonné avant d'arriver à comprendre la philosophie d'intervention dans la structure hierarchique, j'ai décidé de réaliser une petite gestion de fichier sans prétention qui, je l'espère, aidera les débutants à se lancer dans l'aventure. Ce gestionnaire, dont le source est joint avec un fichier exemple, permet de visualiser, ajouter, supprimer, modifier des données et réaliser une recherche simple (bref les fonctions indispensables que chacun pourra adapter pour son propre projet).
Je suis loin d'être un spécialiste dans le domaine et les remarques ou liens utiles seraient je crois très appréciés par tous (notamment un résumé de toutes les fonctions du DOM en français ! avec si possible un exemple d'appel depuis VB6). Je suis preneur.

Conclusion :


Ce gestionnaire s'adresse aux débutants et j'ai documenté le source au maximum. Dans un soucis de clarté, je n'ai pas hésité à utiliser des variables intermédiaires afin de découper chaque action qui concerne le DOM (alors qu'une ligne aurait parfois suffit pour obtenir le même résultat). De plus, afin d'aborder un maximum de domaines, je me suis volontairement compliqué la vie en utilisant les attributs d'étiquettes pour stocker certaines informations (le nom de la personne), plutôt que de les mettre en zone texte (ce que je vous conseille de faire pour vos propres fichiers). Enfin, j'ai mis les nom de variables en français, et ça je crois que c'est un plus pour la compréhension d'un code (dans beaucoup les sources qui utilisent des éléments extérieurs comme les ActiveX, on se demande parfois si on a affaire à un nom de variable ou à une instruction).
Après téléchargement et décompression, je vous invite à double cliquer sur le fichier PGF.xml afin de l'ouvrir dans votre Navigateur Web pour le garder sous les yeux pendant que vous consulterez le source du programme (si vous faites des modifications dans le fichier et les sauvegardez, un appui sur F5 dans le Navigateur Web actualisera l'affichage de votre fichier).

Codes Sources

A voir également

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.