![]() |
XML visualisieren / und ich seh kein Land
Hallo,
ich habe in einem anderen Thread schon mein Kummer mit dem ClientDataSet geäußert. Es funktioniert einfach nicht. Aber evtl. verfolge ich auch den falschen Ansatz. Ich muss den Inhalt dynamischer XML Files mit Delphi geordnet zu Papier (ausdrucken) bringen. Am liebsten wäre es mit hinterher mit Rave. Jemand ein Ansatz für mich? Gibt OLEDB Traiber für XML? |
Re: XML visualisieren / und ich seh kein Land
TXMLDocument vielleicht?
|
Re: XML visualisieren / und ich seh kein Land
Hi,
definiere bitte erst mal: "dynamische XML Files" Heißt das, dass sich die Struktur oder der Inhalt des XML-Dokumentes ändert ? Gruß, Helld |
Re: XML visualisieren / und ich seh kein Land
Sorry, das ich mich solange nicht auf gemeldet habe. Hatte völlig vergessen, dass ich nicht geantwortet habe.
Das Problem bleibt das selbige. Ich habe eine XML Datei, welchen Aufbau ich kenne. Ziel ist es nun alle Attribute dieser Datei auszulesen. Wenn ich das Attribut angebe, dann funtioniert das auch mittlerweile (siehe Code ['selectedValue']). Aber ich würde gerne alle Werte in einer Listbox anzeigen, die sich in der Datei befinden. Gruss
Delphi-Quellcode:
procedure TForm1.erweitereBaum(node : IXMLNode;knoten : TTreeNode);
var nodes : IXMLNodeList; kindknoten : TTreeNode; i : integer; tempStr :String; orvalue :String; begin if node.HasChildNodes then begin nodes := node.ChildNodes; for i := 0 to nodes.Count - 1 do begin case nodes[i].NodeType of ntElement : begin TempStr := ''; if nodes[i].HasAttribute('selectedValue') then begin tempStr:= nodes[i].Attributes['selectedValue']; end; kindknoten := tvBaum.Items.AddChild(knoten,'<'+nodes[i].NodeName+'>'+Tempstr); //orvalue := nodes[i].Attributes[Attributnamen]; {Wie komme ich an den Attributnamen} content.Items.Add (orvalue); {Strinlist} orvalue := ''; end; end; ntText : kindknoten := tvBaum.Items.AddChild(knoten,nodes[i].text); end; // of case erweitereBaum(nodes[i],kindknoten); end; end; end; |
Re: XML visualisieren / und ich seh kein Land
Hallo,
nimm statt Attributes die Eigenschaft AttributeNodes, wenn du den Attributnamen brauchst:
Delphi-Quellcode:
Getippt und nicht getestet.
var
nlAttr: IXMLNodeList; xnAttr: IXMLNode; iAttr: Integer; // ... begin // ... //orvalue := nodes[i].Attributes[Attributnamen]; {Wie komme ich an den Attributnamen} nlAttr := nodes[i].AttributeNodes; for iAttr := 0 to Pred(nlAttr.Count) do begin xnAttr := nlAttr[iAttr]; content.Items.Add(xnAttr.NodeValue); // ShowMessage(xnAttr.NodeName); // attribute name end; // ... Grüße vom marabu |
Re: XML visualisieren / und ich seh kein Land
funktioniert. Super. Danke :thumb:
|
Re: XML visualisieren / und ich seh kein Land
siehe den
![]() :-) thomas, TeamNevrona |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:01 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz