Go
Go
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 Go Downloads
success := false
xml := chilkat.NewXml()
success = xml.LoadXmlFile("qa_data/xml/sample1.xml")
if success != true {
fmt.Println(xml.LastErrorText())
xml.DisposeXml()
return
}
// Navigate to the "books" element:
bFound := xml.FindChild2("books")
if bFound == false {
fmt.Println("No books child found!")
xml.DisposeXml()
return
}
numChildren := xml.NumChildren()
i := 0
for i < numChildren {
// Navigate to the Nth book
xml.GetChild2(i)
// Display the book title:
fmt.Println(*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 {
fmt.Println(xml.LastErrorText())
xml.DisposeXml()
return
}
fmt.Println(*xml.GetXml())
xml.DisposeXml()