IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Delphi Discussion :

Insérer un nœud dans une hiérarchie XML


Sujet :

Delphi

  1. #1
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    317
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 317
    Points : 88
    Points
    88
    Par défaut Insérer un nœud dans une hiérarchie XML
    Bonjour,

    Je n'arrive pas à m'y prendre, comment inseret un noeud dans une hiérarchie XML existante.
    Voici ce que j'arrive a faire,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <Item>
      <Book>
        <Index>
          <Id0>
            <No>
              <Txt>Mon Text</Txt>
              <Ligne2>Info 1</Ligne2>
              <idx>123</idx>
            </No>
          </Id0>
        </Index>
      </Book>
    </Item>
    mais je n'arrive pas à insérer le noeud id1 dans la même hiérarchie que id0 pour avoir ce résultat suivent.

    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
    17
    18
    19
    20
    21
     
    <Item>
      <Book>
        <Index>
          <Id0>
            <No>
              <Txt>Mon Text</Txt>
              <Ligne2>Info 1</Ligne2>
              <idx>123</idx>
            </No>
          </Id0>
    	  <Id1>
            <No>
              <Txt>Autre text</Txt>
              <Ligne1>Config 2</Ligne1>
              <idx>123</idx>
            </No>
          </Id1>
        </Index>
      </Book>
    </Item>
    Voici le code et comment pourrais-je l'adapter pour obtenir ce résultat.

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    Var
      XML : IXMLDocument;
      RootNode, Node, CNode, Node1 , Node2, Node3 , Node4 : IXMLNode;
     
    begin
     
      XML := TXMLDocument.Create(nil);
      XML.LoadFromFile('Test003.xml');
      XML.Active := true ;
      XML.Options := [doNodeAutoIndent];
     
      RootNode :=   XML.DocumentElement;
     
      Node1 := RootNode.AddChild('Book');
      Node2 := Node1.AddChild('Index');
      Node3 := Node2.AddChild('Id1');
      Node4 := Node3.AddChild('No');
     
       CNode:=Node4.AddChild('Txt');
       CNode.Text:='Autre text';
       CNode:=Node4.AddChild('Ligne1');
       CNode.Text:='Config 2';
       CNode:=Node4.AddChild('idx');
       CNode.Text:='123';
     
       XML.SaveToFile('Test003.xml');
     
    end;

    Je vous remercie pour un exemple comment faire, bonne journée.

  2. #2
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 683
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 683
    Points : 13 092
    Points
    13 092
    Par défaut
    IL faut récupérer les nœuds Book et Index existants et non les rajouter.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Node1 := RootNode.ChildNodes['Book'];
    Node2 := Node1.ChildNodes['Index'];

  3. #3
    Membre régulier
    Inscrit en
    Novembre 2006
    Messages
    317
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 317
    Points : 88
    Points
    88
    Par défaut
    Hallo,

    Merci pour ta réponse, quand je pense que j'ai cherché et c'est aussi simple que ça...

    Je te souhaite une bonne semaine.

    Salutation
    Ardely

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 21/04/2008, 17h25
  2. Insérer du texte en couleur dans une JTextArea
    Par piotrr dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 12/12/2007, 13h48
  3. Insérer un bout de code dans une autre page
    Par Yagami_Raito dans le forum Langage
    Réponses: 2
    Dernier message: 04/06/2007, 17h00
  4. Réponses: 2
    Dernier message: 25/08/2006, 22h18
  5. Insérer des BITMAP de 24bit dans une toolbar ?
    Par damien99 dans le forum MFC
    Réponses: 5
    Dernier message: 01/03/2006, 21h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo