Sample code for 30+ languages & platforms
Delphi ActiveX

Demonstrate the XML UpdateAttrAt Method

See more XML Examples

Demonstrates the XML UpdateAttrAt method to update attribute name/value pairs in XML.

Note: This example requires Chilkat v9.5.0.64 or later.

Chilkat Delphi ActiveX Downloads

Delphi ActiveX
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;
autoCreate: Integer;

begin
// Note: This example requires Chilkat v9.5.0.64 or later.
xml := TChilkatXml.Create(Self);

xml.Tag := 'animals';

autoCreate := 1;

// When the autoCreate argument equals 1, the UpdateAttrAt
// method auto-creates the children as needed:
xml.UpdateAttrAt('penguin',autoCreate,'feature','flightless bird');
xml.UpdateAttrAt('mammal|rodent|squirrel',autoCreate,'feature','bushy tail');
xml.UpdateAttrAt('mammal|rodent|rat',autoCreate,'feature','long hairless tail');

// Show the XML
Memo1.Lines.Add(xml.GetXml());

// 	<?xml version="1.0" encoding="utf-8" ?>
// 	<animals>
// 	    <penguin feature="flightless bird" />
// 	    <mammal>
// 	        <rodent>
// 	            <squirrel feature="bushy tail" />
// 	            <rat feature="long hairless tail" />
// 	        </rodent>
// 	    </mammal>
// 	</animals>
// 

// Now update each node's "feature" attribute..
xml.UpdateAttrAt('penguin',autoCreate,'feature','black and white');
xml.UpdateAttrAt('mammal|rodent|squirrel',autoCreate,'feature','grey, red, or black');
xml.UpdateAttrAt('mammal|rodent|rat',autoCreate,'feature','brown, grey, white, or black');

Memo1.Lines.Add(xml.GetXml());

// 	<?xml version="1.0" encoding="utf-8" ?>
// 	<animals>
// 	    <penguin feature="black and white" />
// 	    <mammal>
// 	        <rodent>
// 	            <squirrel feature="grey, red, or black" />
// 	            <rat feature="brown, grey, white, or black" />
// 	        </rodent>
// 	    </mammal>
// 	</animals>
// 
end;