Swift中的Json对象和Json字符串

/ Mac / 没有评论 / 1574浏览

Swift中的Json对象和Json字符串

一.输入

1. Json字符串

let jsonStr = "{"name":"wall","age":"22","hobby":"ball"}"

2.Json对象

let jsonStr = "{"name":"wall","age":"22","hobby":"ball"}"
let jsonData = jsonStr.data(using: String.Encoding.utf8, allowLossyConversion: false)
let json = try? JSONSerialization.jsonObject(with: jsonData, options: .mutableContainers)

二.输出

1.Json对象

{
  "name" : "wall",
  "age" : "22",
  "hobby" : "ball"
}

2.Json字符串

{"name":"wall","age":"22","hobby":"ball"}

三.相互转换

1. Json字符串转Json对象

let jsonStr = "{"name":"wall","age":"22","hobby":"ball"}"
let jsonData = jsonStr.data(using: String.Encoding.utf8, allowLossyConversion: false)
let json = try? JSONSerialization.jsonObject(with: jsonData, options: .mutableContainers)

2.Json对象转Json字符串

let data = try? JSONSerialization.data(withJSONObject: json, options: [])
let jsonStr = String(data: data, encoding: String.Encoding.utf8)

3.Json字符串转字典

let jsonStr = "{"name":"wall","age":"22","hobby":"ball"}"
let jsonData = jsonStr.data(using: String.Encoding.utf8, allowLossyConversion: false)
let json = try? JSONSerialization.jsonObject(with: jsonData, options: .mutableContainers)
if json != nil {
  let dict = json as? [String : Any]
}

4.字典转Json字符串

let data = try? JSONSerialization.data(withJSONObject: dict, options: [])
let jsonStr = String(data: data, encoding: String.Encoding.utf8)