Chilkat HOME Android™ ASP Visual Basic VB.NET C# iOS (IPhone) Objective-C C++ C Unicode C++ Unicode C MFC Delphi DLL Delphi ActiveX FoxPro Java Perl PHP Extension PHP ActiveX Python PowerShell Ruby SQL Server VBScript
Iterate over nodes in an XML document using FirstChild / NextSiblingDownloads: MS Windows Visual C/C++ Libraries Linux/CentOS C/C++ Libraries MAC OS X C/C++ Libraries Solaris C/C++ Libraries C++ Builder Libraries FreeBSD C++ Libraries HP-UX C++ Libraries BlackBerry QNX C++ Libraries Source Code Listing // Iterate over each "DOC" record (crisp.xml) and copy the // ArticleTitle to a new XML document void ScanForArticleTitles2(void) { // Load the input document. CkXml xml; xml.LoadXmlFile("crisp.xml"); // Create the output XML document in-memory CkXml outXml; outXml.put_Tag("article_titles"); // Iterate over the "DOC" nodes by calling FirstChild // followed by NextSibling2 repeatedly until it returns false. CkString strContent; CkXml *node = xml.FirstChild(); while (node) { CkXml *titleNode = node->FindChild("ArticleTitle"); if (titleNode) { // NewChild returns the created child, whereas NewChild2 does not. titleNode->get_Content(strContent); outXml.NewChild2("article",strContent.getString()); delete titleNode; } // Move to the next sibling. The internal reference within node is updated // to the node's next sibling. If no siblings remain, it returns false. if (!node->NextSibling2()) { delete node; node = 0; } } outXml.SaveXml("ArticleTitles2.xml"); return; }
|
© 2000-2013 Chilkat Software, Inc. All Rights Reserved.