Sample code for 30+ languages & platforms
Unicode 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 Unicode C Downloads

Unicode C
#include <C_CkXmlW.h>

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

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

    CkXmlW_putTag(xml,L"animals");

    autoCreate = TRUE;

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

    // Show the XML
    wprintf(L"%s\n",CkXmlW_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..
    CkXmlW_UpdateAttrAt(xml,L"penguin",autoCreate,L"feature",L"black and white");
    CkXmlW_UpdateAttrAt(xml,L"mammal|rodent|squirrel",autoCreate,L"feature",L"grey, red, or black");
    CkXmlW_UpdateAttrAt(xml,L"mammal|rodent|rat",autoCreate,L"feature",L"brown, grey, white, or black");

    wprintf(L"%s\n",CkXmlW_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>
    // 


    CkXmlW_Dispose(xml);

    }