Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(C++) Insert XML into existing XML by calling InsertChildTreeAfterDemonstrates how to insert an XML tree or subtree into another XML document using the InsertChildTreeAfter method.
#include <CkXml.h> void ChilkatSample(void) { // Build the 1st XML document: // <x1> // <a1>1</a1> // <a2>2</a2> // <a3>3</a3> // </x1> CkXml xml; xml.put_Tag("x1"); xml.UpdateChildContent("a1","1"); xml.UpdateChildContent("a2","2"); xml.UpdateChildContent("a3","3"); // Build a 2nd XML document: // <x2> // <b1>11</b1> // <b2>22</b2> // <b3>33</b3> // </x2> CkXml xml2; xml2.put_Tag("x2"); xml2.UpdateChildContent("b1","11"); xml2.UpdateChildContent("b2","22"); xml2.UpdateChildContent("b3","33"); // We want to insert xml2 into xml to get this: // <x1> // <a1>1</a1> // <x2> // <b1>11</b1> // <b2>22</b2> // <b3>33</b3> // </x2> // <a2>2</a2> // <a3>3</a3> // </x1> // Insert xml2 after "a1" int index = xml.TagIndex("a1"); if (index < 0) { std::cout << "a1 not found." << "\r\n"; return; } xml.InsertChildTreeAfter(index,xml2); std::cout << xml.getXml() << "\r\n"; // The result is: // <x1> // <a1>1</a1> // <x2> // <b1>11</b1> // <b2>22</b2> // <b3>33</b3> // </x2> // <a2>2</a2> // <a3>3</a3> // </x1> // Note: xml2 now points to the subtree within xml. // For example, update "b3" and then see how it's updated within the merged document: xml2.UpdateChildContent("b3","33333333"); std::cout << xml.getXml() << "\r\n"; // The result: // <x1> // <a1>1</a1> // <x2> // <b1>11</b1> // <b2>22</b2> // <b3>33333333</b3> // </x2> // <a2>2</a2> // <a3>3</a3> // </x1> } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.