How to Convert a JSON String to a Dictionary in Swift


How to Convert a JSON String to a Dictionary in Swift ?

Answer

To convert a JSON string to a dictionary in Swift, you can use the `JSONSerialization` class. This allows you to parse a JSON string and convert it into a dictionary.



✐ Examples

1 Converting a JSON String to a Dictionary Using `JSONSerialization`

We can convert a JSON string to a dictionary in Swift using the `JSONSerialization` class. This example demonstrates how to declare a JSON string, use the `JSONSerialization.jsonObject(with:options:)` method to convert the JSON string to a dictionary, and print the resulting dictionary.

For example,

  1. We start by declaring a JSON string named jsonString that contains the JSON representation of a dictionary.
  2. We use the `JSONSerialization.jsonObject(with:options:)` method to convert the JSON string to a dictionary.
  3. We print the resulting dictionary.

Swift Program

import Foundation

let jsonString = "{\"1\":\"One\",\"2\":\"Two\",\"3\":\"Three\"}"

// Convert the JSON string to a dictionary using JSONSerialization
if let jsonData = jsonString.data(using: .utf8),
   let myDictionary = try? JSONSerialization.jsonObject(with: jsonData, options: []) as? [String: String] {
    // Print the resulting dictionary
    print("Dictionary from JSON string:")
    for (key, value) in myDictionary {
        print("Key: \(key), Value: \(value)")
    }
}

Output

Dictionary from JSON string:
Key: 1, Value: One
Key: 2, Value: Two
Key: 3, Value: Three

2 Converting a JSON String with Complex Values to a Dictionary

We can convert a JSON string with complex values to a dictionary in Swift using the `JSONSerialization` class. This example demonstrates how to declare a JSON string with complex values, use the `JSONSerialization.jsonObject(with:options:)` method to convert the JSON string to a dictionary, and print the resulting dictionary.

For example,

  1. We start by declaring a JSON string named jsonString that contains the JSON representation of a dictionary with complex values.
  2. We use the `JSONSerialization.jsonObject(with:options:)` method to convert the JSON string to a dictionary.
  3. We print the resulting dictionary.

Swift Program

import Foundation

let jsonString = "{\"1\":{\"name\":\"John\",\"age\":30},\"2\":{\"name\":\"Jane\",\"age\":25}}"

// Convert the JSON string to a dictionary using JSONSerialization
if let jsonData = jsonString.data(using: .utf8),
   let myDictionary = try? JSONSerialization.jsonObject(with: jsonData, options: []) as? [String: [String: Any]] {
    // Print the resulting dictionary
    print("Dictionary from JSON string:")
    for (key, value) in myDictionary {
        print("Key: \(key), Value: \(value)")
    }
}

Output

Dictionary from JSON string:
Key: 1, Value: {"name": "John", "age": 30}
Key: 2, Value: {"name": "Jane", "age": 25}

Summary

In this tutorial, we learned How to Convert a JSON String to a Dictionary in Swift language with well detailed examples.




More Swift Dictionaries Tutorials

  1. How to create an Empty Dictionary in Swift ?
  2. How to create a Dictionary with Initial Key-Value Pairs in Swift ?
  3. How to Print a Dictionary in Swift ?
  4. How to Add a Key-Value Pair to a Dictionary in Swift ?
  5. How to Set a Default Value for a Key in a Dictionary in Swift ?
  6. How to Update the Value for a Key in a Dictionary in Swift ?
  7. How to Check if a Dictionary is Empty in Swift ?
  8. How to Check if a Key Exists in a Dictionary in Swift ?
  9. How to Check if a Value Exists in a Dictionary in Swift ?
  10. How to Get the Value Associated with a Key in a Dictionary in Swift ?
  11. How to Remove a Key-Value Pair from a Dictionary in Swift ?
  12. How to Remove Key-Value Pairs from a Dictionary Based on Values in Swift ?
  13. How to Clear all Key-Value Pairs from a Dictionary in Swift ?
  14. How to Iterate over Keys in a Dictionary in Swift ?
  15. How to Iterate over Values in a Dictionary in Swift ?
  16. How to Iterate over Entries (Key-Value Pairs) in a Dictionary in Swift ?
  17. How to Get the Size (Number of Key-Value Pairs) of a Dictionary in Swift ?
  18. How to Convert a Dictionary to an Array of Keys in Swift ?
  19. How to Convert a Dictionary to an Array of Values in Swift ?
  20. How to Convert a Dictionary to an Array of Key-Value Pairs in Swift ?
  21. How to Merge Two Dictionaries in Swift ?
  22. How to Clone a Dictionary in Swift ?
  23. How to Check if Two Dictionaries are Equal in Swift ?
  24. How to Sort a Dictionary by Keys in Swift ?
  25. How to Sort a Dictionary by Values in Swift ?
  26. How to Filter a Dictionary Based on Keys in Swift ?
  27. How to Filter a Dictionary Based on Values in Swift ?
  28. How to Reduce Values in a Dictionary to a Single Value in Swift ?
  29. How to Convert an Array of Key-Value Pairs to a Dictionary in Swift ?
  30. How to Convert a Dictionary to a JSON String in Swift ?
  31. How to Convert a JSON String to a Dictionary in Swift ?
  32. How to Swap Keys and Values in a Dictionary in Swift ?
  33. How to Create a Dictionary of Dictionaries in Swift ?
  34. How to Iterate Over a Dictionary of Dictionaries in Swift ?