Sample code for 30+ languages & platforms
C#

AddAttribute - Insert New Attribute in an XML Node

Demonstrates adding an name=value attribute to an XML element.

This example uses the XML sample file here: sample1.xml. The sample1.xml file contains this content:

Chilkat C# Downloads

C#
bool success = false;

Chilkat.Xml xml = new Chilkat.Xml();

success = xml.LoadXmlFile("qa_data/xml/sample1.xml");
if (success != true) {
    Debug.WriteLine(xml.LastErrorText);
    return;
}

//  Navigate to the "books" element:
bool bFound = xml.FindChild2("books");
if (bFound == false) {
    Debug.WriteLine("No books child found!");
    return;
}

int numChildren = xml.NumChildren;

int i = 0;
while (i < numChildren) {

    //  Navigate to the Nth book 
    xml.GetChild2(i);

    //  Display the book title:
    Debug.WriteLine(xml.GetAttrValue("title"));

    //  Add a new integer attribute:
    //  Should never fail..
    xml.AddAttributeInt("bookId",i);

    //  Add a new unread="yes" attribute:
    xml.AddAttribute("unread","yes");

    //  Navigate back up to the parent:
    xml.GetParent2();

    i = i + 1;
}

//  Navigate back to the document root:
xml.GetRoot2();

//  Save the updated document:
success = xml.SaveXml("modified.xml");
if (success != true) {
    Debug.WriteLine(xml.LastErrorText);
    return;
}

Debug.WriteLine(xml.GetXml());