Sample code for 30+ languages & platforms
C

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 C Downloads

C
#include <C_CkXml.h>

void ChilkatSample(void)
    {
    HCkXml xml;
    BOOL autoCreate;

    //  Note: This example requires Chilkat v9.5.0.64 or later.
    xml = CkXml_Create();

    CkXml_putTag(xml,"animals");

    autoCreate = TRUE;

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

    //  Show the XML
    printf("%s\n",CkXml_getXml(xml));

    //  	<?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..
    CkXml_UpdateAttrAt(xml,"penguin",autoCreate,"feature","black and white");
    CkXml_UpdateAttrAt(xml,"mammal|rodent|squirrel",autoCreate,"feature","grey, red, or black");
    CkXml_UpdateAttrAt(xml,"mammal|rodent|rat",autoCreate,"feature","brown, grey, white, or black");

    printf("%s\n",CkXml_getXml(xml));

    //  	<?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>
    //  


    CkXml_Dispose(xml);

    }