AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

bestimmte XML-Nodes auslesen

Ein Thema von Susanne · begonnen am 23. Jun 2006 · letzter Beitrag vom 25. Jul 2006
 
Susanne

Registriert seit: 21. Mai 2004
Ort: Lage
232 Beiträge
 
Delphi 2005 Professional
 
#1

bestimmte XML-Nodes auslesen

  Alt 23. Jun 2006, 09:02
ich hab bisher noch nicht viel mit XML gemacht und scheitere im Moment ein bisschen, wäre daher sehr nett, wenn ihr mir ein wenig helfen würdet.
meine xml-Struktur:
Delphi-Quellcode:
   <?xml version="1.0" encoding="utf-8"?>
   <Info>
     <Export>
       <Documents>
         <Document ID="12345" Extension="xxx">
           <Indexe>
             <Index name="nr1">
               <Gefundene Count="1">
                 <Gefunden>hallo</Gefunden>
               </Gefundene>
             </Index>
           </Indexe>
         </Document>
         <Document ID="23456" Extension="xxx">
           <Indexe>
             <Index name="nr2">
               <Gefundene Count="0"/>
             </Index>
           </Indexe>
         </Document>
       </Documents>
       <andereNode>
         <Node Name="testnr">Test</Node>
         <Node Name="testnr2">Test2</Node>
       </andereNode>
     </Export>
   </Info>
Mein Problem besteht nun darin, dass ich an ein bestimmtes Attribut eines Knoten kommen möchte und zwar "ID= " und wenn ich dann das richtige gefunden habe (dieses kommt mehrmals vor) dann möchte ich Index Name= auslesen und wenn Value <> 0 ist, dann auch Values auslesen.

Ich benutze in Delphi XMLDoc und XMLIntf und msxml2_TLB

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  xmlDomdoc : DomDocument40;
  domNodelist : IXMLDomNodelist;
  domNode : IXMLDomNode;
  i : integer;
begin
  xmlDomDoc:= CoDomDocument40.Create;
  xmlDomDoc.load('D:\dev\Schillig\-XMLArchiver\Daten\export.xml');
  domNodelist := xmlDomDoc.documentElement.selectNodes
('//Export/Documents/Document/');
  for i := 0 to domNodelist.length - 1 do
  begin
    domNode:= domNodeList.item[i];
    ShowMessage(domNode.nodeName);

    if DomNode <> nil then
    begin

    //aber wie komme ich hier an das Attribut?
    
    end;
    domNode := DomNode.NextSibling; // zum nächsten Knoten auf der Ebene
  end;
end;
Vielen Dank schon mal.
Susanne
Susanne
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:21 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