Créer et lire un fichier xml
Salut !
Je serais vraiment très reconnaissant si quelqu'un pouvait m'aider ou me donner la solution pour créer un fichier XML et de le lire pour récupérer des infos.
J'ai pas très bien compris la méthode AddChild et dans quel cas je dois l'utiliser.
Bon, je vous en remercie par avance.
A la prochaine.
demande d'explications supplémentaires
Bonjour !
Je tenais à vous remercier vivement pour les indications données pour la création et la lecture d'un fichier xml.
J'aurais 2 questions supplémentaires concernant ce que l'on m'a donné:
1) _di_IXMLNode Racine = DocumentXML->DocumentElement signifie-t-il bien que Racine est une variable de type XMLNode ? Que signifie alors _di_I?
2)Je voudrais créer un élément projet à qui est associé une liste d'éléments module qui lui meme est associé à une liste d'élément personne
Une Anomalie est caractérisée par une personne et par un module.
Comment faut-il créer le fichier xml (Tout d'un coup avec x anomalies créées ou après chaque anomalie créée)?
Je suis peut-etre un peu lourd à demander çà mais je suis un débutant avec le xml.
Merci d'avance.
A bientot.
Précision concernant la question
Rebonjour!
Merci kurul1.
Je vais essayer d'etre plus clair :
Je suis entrain de créer une "base" d'anomalie qui permet de sauvegarder les anomalies et les "données" sous un fichier xml.
Une anomalie a comme attribut un nom, une date, un type, un programmeur et un module.
Je voudrais que mon fichier xml ait la structure suivante :
- <Projet>
- <Module>
-<Personne>
-<Anomalie1>
-<Anomalie2>
Tous ces éléments sont des objets dans mon programme.
Sachant qu'un projet est caractérisé par un nom et une liste de modules et qu'un module est caractérisé par un nom et une liste de personnes.
J'ai un bouton "enregistrer" qui va me permettre la sauvegarde.
Donc je galère pas mal pour trouver l'algorithme pour la sauvegarde et celui du chargement.
Donc si tu peux m'aider car j'ai vraiment du mal en algo (j'ai pas encore la logique algo, mais je pense y parvenir avec plus d'expérience).
(j'abuse peut-etre mais franchement là je m'en sors pas).
si il y a encore des problèmes de compréhension, n'hésite pas à me demander. j'essayerais de répondre pour que tu comprennes mieux.
Merci.
A bientot.
Re: Précision concernant la question
D'après les indications concernant la structure de ton document XML ressemblerait à ça :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
<Projet Nom="">
<Module Nom="">
<Personne Nom= "" >
<Anomalie Nom="" Date="" Type="" Programmeur="" Module=""/>
...
</Personne>
...
</Module>
...
</Projet> |
Dis-moi si je me trompe !
Pour construire ton document :
- tu commence donc par créer ton Nœud Projet que tu ajoute au document XML (ca sera ta racine).
- Ensuite tu crée les nœuds Module du projet (un for sur le nombre de module de ton projet)
- Pour chaque nœud Module, tu crée ces nœuds Personne (Un for sur le nombre de personne de ton module)
- Pour chaque nœud Personne tu crée ces nœud Anomalie (Un for sur le nombre d'anomalies de la personne.
A chaque itération des for, tu ajoute le nœud que tu viens de créer a ChildNodes du nœud père.
Exemple
Pour le for de création des nœuds Module, tu ajoute la ligne
Code:
1 2
|
Projet->ChildNodes->Add(Module) ; |
Pour la lecture, tu fonctionne sur le même principe
- Tu récupère ta racine Projet
- Tu balaye chaque module
- Pour chaque Module tu balaye chaque Personne
- Pour chaque Personne tu balaye chaque Anomalie