AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein XML Delphi XML-Datei mit XDOM komplett auslesen
Thema durchsuchen
Ansicht
Themen-Optionen

XML-Datei mit XDOM komplett auslesen

Ein Thema von ak1 · begonnen am 25. Jan 2004 · letzter Beitrag vom 25. Jan 2004
Antwort Antwort
ak1

Registriert seit: 12. Okt 2003
243 Beiträge
 
#1

XML-Datei mit XDOM komplett auslesen

  Alt 25. Jan 2004, 03:02
Hallo Leute,

ich habe eine XML-Datei bei der ich theoretisch nicht weiss wie die einzelnen Knoten dieser Datei heissen. Jetzt frage ich mich wie ich durch die ganze Datei durchlaufen kann und mir dabei die Knotennamen und deren Inhalt anzeigen lassen kann. Das ganze will ich mit XDOM und Delphi 6 machen.

Folgenden code habe ich schon:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  Doc: TDOMDocument;
  List: TDomNodeList;
  Knoten: TDomNode;
  Len, i: Integer;
  S: string;
begin
  //Memo1.Clear;
  ListBox1.Items.Clear;

  Doc := XmlToDomParser1.FileToDom(extractfiledir(application.ExeName) + '\test.xml');

  List := Doc.documentElement.childNodes;

  Len := List.length;
  for i := 0 To List.length -1 do
    ListBox1.Items.Add(List.item(i).nodeName);

end;
Ich schaffe es einfach nicht alle Knoten und deren Inhalt in der Listbox anzuzeigen. Wie gesagt ich darf nicht wissen wie die Knote heissen. Habt ihr eine Idee?

Gruß AK
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#2

Re: XML-Datei mit XDOM komplett auslesen

  Alt 25. Jan 2004, 10:22
http://www.delphipraxis.com/images/common/icon_df.gif klick
  Mit Zitat antworten Zitat
ak1

Registriert seit: 12. Okt 2003
243 Beiträge
 
#3

Re: XML-Datei mit XDOM komplett auslesen

  Alt 25. Jan 2004, 12:46
Danke für den link Mathias

Für alle die es interessiert, hier mal der komplette Quellcode:
(tv ist ein TreeView)


Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  Doc: TDOMDocument;
begin

  tv.Items.Clear;

  Doc := XmlToDomParser1.FileToDom(extractfiledir(application.ExeName) + '\test.xml');
  GetThoseNodes(Doc.documentElement,nil);

end;

procedure TForm1.GetThoseNodes(const Knoten: TDomNode; tvParent: TTreeNode);
var
  tn : TTreeNode;
  len, i: Integer;
  s: string;
begin

  if (Knoten = nil) then exit;

  if (Knoten.nodeType = ntElement_Node) then
    s:=Knoten.nodeName
  else
    s:=Knoten.nodeValue;

  if (tvparent=nil) then
    tn:= tv.Items.Add(nil,s)
  else
    tn := tv.Items.AddChild(tvParent,s);

  if Knoten.childNodes.length >0 then
    for i := 0 to Knoten.childNodes.length - 1 do

  GetThoseNodes(Knoten.childNodes.item(i),tn);

end;
  Mit Zitat antworten Zitat
Antwort Antwort


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 02: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