Bonjour,
je cherche à avoir une arborescence XML comme ceci :
VCARDS
--VCARD
----Nom = toto
----Prénom = Albert
----Adresse
------Ligne1 = Rue des plantes en pot
------Ligne2 = 13100
------Ligne3 = Marseille
--VCARD
...
J'ai codé ceci :
J'obtiens ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 XMLDoc: TXMLDocument; Carte : IXMLNode ; Adr : IXMLNode ; List2 : TStringList ; // Contient les lignes de l'adresse ... XMLDoc.DocumentElement := XMLDoc.CreateElement('VCARDS',''); // Boucle ... Carte := XMLDoc.DocumentElement.AddChild('VCARD'); Carte.Attributes['Nom'] := 'toto' ; Carte.Attributes['Prénom'] := 'Albert' ; Adr := XMLDoc.DocumentElement.AddChild('Adresse'); For i := 0 To List2.Count-1 Do Begin IAdr := IAdr + 1 ; // Numéro de la ligne d'adresse Adr.Attributes['Ligne-'+IntToStr(IAdr)] := List2.Strings[i] ; End ;
Adresse est au même niveau que VCARD, alors que je le voudrais au même niveau que Nom, Prénom<VCARDS>
<VCARD-1 Nom="toto" Prénom="Albert"/>
<Adresse Ligne-1="Rue des plantes en pot" Ligne-2="13100" Ligne-3="Marseille"/>
</VCARDS>
<VCARDS>
...
J'ai essayé de remplacer :
Adr := XMLDoc.DocumentElement.AddChild('Adresse');
par :
Carte.Attributes['Adresse'] := 'Adresse' ;
Cette fois, Adresse est au même niveau que Nom, Prénom, mais évidement les Lignes sont au même niveau que Adresse. Je veux les décaler en quatrième niveau.
Comment faire ?
Merci
A+
Charly
Partager