![]() |
OpenXML navigieren in TDomDocument
Hallo,
Delphi-Quellcode:
Ich denke das müsste doch komplett über den Namen ansprechbar sein???
<?xml version="1.0" encoding="UTF-8" ?>
<liste> <item> <isactive>true</isactive> ... </item> <item> <isactive>false</isactive> ... </item> </liste> var xdoc: TDomDocument; // Auslesen des Wertes "false" für das 2te item xdoc.FindFirstChildElement.GetElementsByTagName('item').Item(1).ChildNodes.Item(0).ChildNodes.Item(0).NodeValue;
Delphi-Quellcode:
Weiß jemand wie das am elegantesten gelöst wird? Vor allem wenn das XML-File noch tiefer geschachtelt wird.
// So irgendwie
xdoc.FindFirstChildElement.GetElementsByTagName('item').Item(1).GetElementsByTagName('isactive').NodeValue thx |
Re: OpenXML navigieren in TDomDocument
Hi,
wenn ich das Manual richtig lese, dann kannst du eine XPathExpression verwenden um an alle Knoten zu gelangen:
Delphi-Quellcode:
Getippt und nicht getestet.
var
xp: TXPathExpression; doc: TDomDocumentXPath; begin // ... xp := TXPathExpresion.Create(self); try xp.Expression := '//item/isactive'; xp.ContextNode := doc.documentElement; if xp.Evaluate then ShowMessage(xp.ResultNode(0).NodeValue) else ShowMessage('rats'); finally xp.Free; end; end; Freundliche Grüße |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:52 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