在Swift中,有多种不同的JSON解码器可供选择。下面是一些常见的解码器及其代码示例:
let jsonString = "{\"name\": \"John\", \"age\": 30}"
if let jsonData = jsonString.data(using: .utf8) {
do {
if let json = try JSONSerialization.jsonObject(with: jsonData, options: []) as? [String: Any] {
let name = json["name"] as? String ?? ""
let age = json["age"] as? Int ?? 0
print("Name: \(name), Age: \(age)")
}
} catch {
print("Error decoding JSON: \(error)")
}
}
import SwiftyJSON
let jsonString = "{\"name\": \"John\", \"age\": 30}"
if let jsonData = jsonString.data(using: .utf8) {
do {
let json = try JSON(data: jsonData)
let name = json["name"].stringValue
let age = json["age"].intValue
print("Name: \(name), Age: \(age)")
} catch {
print("Error decoding JSON: \(error)")
}
}
struct Person: Codable {
let name: String
let age: Int
}
let jsonString = "{\"name\": \"John\", \"age\": 30}"
if let jsonData = jsonString.data(using: .utf8) {
do {
let person = try JSONDecoder().decode(Person.self, from: jsonData)
print("Name: \(person.name), Age: \(person.age)")
} catch {
print("Error decoding JSON: \(error)")
}
}
这些示例展示了使用不同的JSON解码器解析JSON数据的方法。你可以根据自己的需求选择合适的解码器。
下一篇:不同值范围内的字符匹配