Sample code for 30+ languages & platforms
React Native

Serialize / Deserialize Hashtable to/from XML

Demonstrates how to seralize / deserialize a Hashtable to/from XML.

Note: This example requires Chilkat v9.5.0.64 or later.

Chilkat React Native Downloads

React Native
import { Hashtable, StringBuilder, StringTable } from '@chilkat/react-native'

function chilkatExample() {
  // Note: This example requires Chilkat v9.5.0.64 or later.

  // Add some entries to a hashtable.
  const hashTab = new Hashtable();

  hashTab.addStr('aaa', '111');
  hashTab.addStr('bbb', '222');
  hashTab.addStr('ccc', '333');

  // Serialize to XML
  const sb = new StringBuilder();
  hashTab.toXmlSb(sb);
  console.log(sb.getAsString());
  console.log('---');

  // 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.
  const hashTab2 = new Hashtable();
  hashTab2.addFromXmlSb(sb);

  // 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.
  const sTable = new StringTable();
  hashTab2.getKeys(sTable);

  let i = 0;
  const numKeys = sTable.count;
  while (i < numKeys) {
    const key = sTable.stringAt(i);
    console.log(`${key}: ${hashTab2.lookupStr(key)}`);
    i++;
  }
}