Swift
Swift
Insert after Node with Tag
See more XML Examples
Demonstrates how to insert a new node as a sibling directly after a specified node having a given tag.Note: This example requires Chilkat v9.5.0.76 or greater. The TagIndex method was introduced in v9.5.0.76
Chilkat Swift Downloads
func chilkatTest() {
// First, let's create the following XML:
// <FatturaElettronicaHeader>
// <DatiTrasmissione>
// <IdTrasmittente>
// <IdPaese>IT</IdPaese>
// <IdCodice>12345678</IdCodice>
// </IdTrasmittente>
// </DatiTrasmissione>
// </FatturaElettronicaHeader>
let xml = CkoXml()!
xml.tag = "FatturaElettronicaHeader"
xml.updateChildContent(tagPath: "DatiTrasmissione|IdTrasmittente|IdPaese", value: "IT")
xml.updateChildContent(tagPath: "DatiTrasmissione|IdTrasmittente|IdCodice", value: "12345678")
// Now insert a new node to get this XML:
// <FatturaElettronicaHeader>
// <DatiTrasmissione>
// <IdTrasmittente>
// <IdPaese>IT</IdPaese>
// <NewTag>Content</NewTag>
// <IdCodice>12345678</IdCodice>
// </IdTrasmittente>
// </DatiTrasmissione>
// </FatturaElettronicaHeader>
var xT: CkoXml? = xml.findChild(tagPath: "DatiTrasmissione|IdTrasmittente")
var index: Int = xT!.tagIndex(tagPath: "IdPaese").intValue
if index < 0 {
print("nothing found at the given tag.")
return
}
var x1: CkoXml? = xT!.newChild(after: index, tag: "NewTag", content: "Content")
x1 = nil
xT = nil
// Show the resulting XML.
print("\(xml.getXml()!)")
}