Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   XML (https://www.delphipraxis.net/46-xml/)
-   -   Delphi XML - mehrere GLEICHE Childnodes (https://www.delphipraxis.net/123892-xml-mehrere-gleiche-childnodes.html)

schwa226 10. Nov 2008 22:29


XML - mehrere GLEICHE Childnodes
 
Hi,

ich habe hier eine XML Strucktur die mehrere Childnodes hat:

Code:
<?xml version="1.0" encoding="iso-8859-1"?>
<Remote Version="1.0" Name="default">
  <Group Name="On screen display" ID="5" System="-1">
    <Command Name="Menu" Value="321" ID="11" System="5">
      <Event Source="Keyboard">ESC</Event>
      <Event Source="ExPlugin">3010</Event>
      <Event Source="ExPlugin">3014</Event>    
    </Command>
  </Group>
</Remote>
Nun möchte ich alle Childnodes der Source ExPlugin auslesen.

Wenn ich aber den Node per
Code:
doc.selectSingleNode('//Command[@Name="Menu"]Event[@Source="ExPlugin"]');
auswähle bewkomme ich immer nur den 1. Childnode von ExPlugin. Wie bekomme ich nun auch den 2. Childnode?

Danke!

sx2008 10. Nov 2008 23:32

Re: XML - mehrere GLEICHE Childnodes
 
Du musst auch die richtige Methode benützen.
SelectSingleNode() liefert, na wie viele Knoten?
probier mal SelectNodes(). :zwinker:

JSB 11. Nov 2008 09:57

Re: XML - mehrere GLEICHE Childnodes
 
ich würde eine Schleife empfehlen die über einen Index alle ChildNodes durchgeht.

Also in etwa so:

Delphi-Quellcode:
 
for i:=0 to XMLDocument.DocumentElement.ChildNodes[0].ChildNodes[0].ChildNodes.Count-1 do
begin
   ShowMessage(XMLDocument.DocumentElement.ChildNodes['Group'].ChildNodes['Command'].ChildValues[1]);
end;
Du kannst auch hier reinschauen: http://ajmbarros.blogspot.com/2008/11/txmldocument.html

schwa226 11. Nov 2008 11:32

Re: XML - mehrere GLEICHE Childnodes
 
Verdammt,

da sehe ich die Childnodes vor den ganzen Nodes nicht... :roll:

Danke für den Hinweis!

Werde ich ausprobieren!


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:32 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz