Sample code for 30+ languages & platforms
C

ExtractChildByName using a Tag Path

Demonstrates calling ExtractChildByName with a tag path.

This example requires Chilkat v9.5.0.64 or greater.

Chilkat C Downloads

C
#include <C_CkXml.h>

void ChilkatSample(void)
    {
    HCkXml xml;
    HCkXml xCalif;

    xml = CkXml_Create();

    CkXml_putTag(xml,"world");

    //  This example uses features introduced in v9.5.0.64
    CkXml_NewChild2(xml,"north_america|united_states|california|san_francisco","Silicon Valley");
    CkXml_NewChild2(xml,"north_america|united_states|california|san_diego","Birthplace of California");
    CkXml_NewChild2(xml,"north_america|united_states|illinois|chicago","Windy City");

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

    //  Produces the following XML
    //  
    //  	<?xml version="1.0" encoding="utf-8" ?>
    //  	<world>
    //  	    <north_america>
    //  	        <united_states>
    //  	            <california>
    //  	                <san_francisco>Silicon Valley</san_francisco>
    //  	                <san_diego>Birthplace of California</san_diego>
    //  	            </california>
    //  	            <illinois>
    //  	                <chicago>Windy City</chicago>
    //  	            </illinois>
    //  	        </united_states>
    //  	    </north_america>
    //  	</world>
    //  

    xCalif = CkXml_ExtractChildByName(xml,"north_america|united_states|california","","");

    printf("%s\n",CkXml_getXml(xCalif));
    CkXml_Dispose(xCalif);

    //  xCalif contains:

    //  	<?xml version="1.0" encoding="utf-8" ?>
    //  	<california>
    //  	    <san_francisco>Silicon Valley</san_francisco>
    //  	    <san_diego>Birthplace of California</san_diego>
    //  	</california>

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

    //  xml now contains:

    //  	<?xml version="1.0" encoding="utf-8" ?>
    //  	<world>
    //  	    <north_america>
    //  	        <united_states>
    //  	            <illinois>
    //  	                <chicago>Windy City</chicago>
    //  	            </illinois>
    //  	        </united_states>
    //  	    </north_america>
    //  	</world>


    CkXml_Dispose(xml);

    }