Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Delphi ActiveX) Get XML Attribute Value by PathDemonstrates how to get an attribute value by path.
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB; ... procedure TForm1.Button1Click(Sender: TObject); var xml: TChilkatXml; success: Integer; path: WideString; attrValue: WideString; i: Integer; begin // The XML used in this example contains the following: // This example will get the value of the "spay-neuter" attribute for each pig. // <pig-rescue> // <herd name="Cathy"> // <species name="pot belly pig"> // <animal> // <name>Molly II</name> // <birth>February, 1998</birth> // <in-date>January, 2000</in-date> // <from>Middle Ave.</from> // <gender spay-neuter="yes">F</gender> // <info>Molly came from a place where an old, ill man had too many animals. // The animals were seldom fed and rats would eat the newborn piglets. // When Molly was found at one week old, she was the only piglet of // her siblings who did not get stepped on by a cow. She is a sweet, // friendly pig who likes to hang out on Cathy's porch on the lounge // pad. // </info> // </animal> // <animal> // <name>Nigel</name> // <birth>June, 1991</birth> // <in-date>August, 1991</in-date> // <from>Breeder</from> // <gender spay-neuter="no">M</gender> // <info> // Nigel was the first pig and the reason for the rescue in the // first place. He is 13 now and doing well, but takes a number // of medications, as you can see below. // </info> // </animal> // </species> // </herd> // </pig-rescue> xml := TChilkatXml.Create(Self); success := xml.LoadXmlFile('qa_data/xml/twoPigs.xml'); // Use the ChilkatPath method to return the value of a particular attribute at a given path. // A path ending with "(attributeName)" will return the value for the given attribute. path := 'herd|species|animal[0]|gender|(spay-neuter)'; attrValue := xml.ChilkatPath(path); Memo1.Lines.Add('1st pig spay-neuter: ' + attrValue); path := 'herd|species|animal[1]|gender|(spay-neuter)'; attrValue := xml.ChilkatPath(path); Memo1.Lines.Add('2nd pig spay-neuter: ' + attrValue); // We could also do it like this: path := 'herd|species|animal[i]|gender|(spay-neuter)'; i := 0; while i < xml.NumChildrenAt('herd|species') do begin xml.I := i; Memo1.Lines.Add('spay-neuter for pig number ' + IntToStr(i + 1) + ': ' + xml.ChilkatPath(path)); i := i + 1; end; end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.