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
(DataFlex) Serialize / Deserialize Hashtable to/from XMLDemonstrates how to seralize / deserialize a Hashtable to/from XML. Note: This example requires Chilkat v9.5.0.64 or later.
Use ChilkatAx-win32.pkg Procedure Test Handle hoHashTab Boolean iSuccess Variant vSb Handle hoSb 2 Handle hoHashTab2 Variant vSTable Handle hoSTable Integer i Integer iNumKeys String sKey String sTemp1 // Note: This example requires Chilkat v9.5.0.64 or later. // Add some entries to a hashtable. Get Create (RefClass(cComChilkatHashtable)) To hoHashTab If (Not(IsComObjectCreated(hoHashTab))) Begin Send CreateComObject of hoHashTab End Get ComAddStr Of hoHashTab "aaa" "111" To iSuccess Get ComAddStr Of hoHashTab "bbb" "222" To iSuccess Get ComAddStr Of hoHashTab "ccc" "333" To iSuccess // Serialize to XML Get Create (RefClass(cComChilkatStringBuilder)) To hoSb If (Not(IsComObjectCreated(hoSb))) Begin Send CreateComObject of hoSb End Get pvComObject of hoSb to vSb Get ComToXmlSb Of hoHashTab vSb To iSuccess Get ComGetAsString Of hoSb To sTemp1 Showln sTemp1 Showln "---" // The output is as follows. Each hash table entry // is contained in an "e" node. The entry's key // is in the "k" node, and the value in the "v" node. // <?xml version="1.0" encoding="utf8-8"?> // <hashtable> // <e><k>aaa</k><v>111</v></e> // <e><k>bbb</k><v>222</v></e> // <e><k>ccc</k><v>333</v></e> // </hashtable> // // Now load (deserialize) into a new hash table. Get Create (RefClass(cComChilkatHashtable)) To hoHashTab2 If (Not(IsComObjectCreated(hoHashTab2))) Begin Send CreateComObject of hoHashTab2 End Get pvComObject of hoSb to vSb Get ComAddFromXmlSb Of hoHashTab2 vSb To iSuccess // Get the hash table keys, and lookup each (to show // that the hash table was correctly deserialized). // The GetKeys method can return the keys in any order. Get Create (RefClass(cComChilkatStringTable)) To hoSTable If (Not(IsComObjectCreated(hoSTable))) Begin Send CreateComObject of hoSTable End Get pvComObject of hoSTable to vSTable Get ComGetKeys Of hoHashTab2 vSTable To iSuccess Move 0 To i Get ComCount Of hoSTable To iNumKeys While (i < iNumKeys) Get ComStringAt Of hoSTable i To sKey Get ComLookupStr Of hoHashTab2 sKey To sTemp1 Showln sKey ": " sTemp1 Move (i + 1) To i Loop End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.