在SWIFT中将字典转换为JSON我已经创建了下一个字典:var postJSON = [ids[0]:answersArray[0], ids[1]:answersArray[1], ids[2]:answersArray[2]] as Dictionary我得到了:[2: B, 1: A, 3: C]那么,如何将其转换为JSON呢?
3 回答
慕的地6264312
TA贡献1817条经验 获得超6个赞
SWIFT 3.0
NSJSONSerialization
let dic = ["2": "B", "1": "A", "3": "C"]do { let jsonData = try JSONSerialization.data(withJSONObject: dic, options: .prettyPrinted) // here "jsonData" is the dictionary encoded in JSON data let decoded = try JSONSerialization.jsonObject(with: jsonData, options: []) // here "decoded" is of type `Any`, decoded from JSON data // you can now cast it with the right type if let dictFromJSON = decoded as? [String:String] { // use dictFromJSON }} catch { print(error.localizedDescription)}
SWIFT 2.x
do { let jsonData = try NSJSONSerialization.dataWithJSONObject(dic, options: NSJSONWritingOptions.PrettyPrinted) // here "jsonData" is the dictionary encoded in JSON data let decoded = try NSJSONSerialization.JSONObjectWithData(jsonData, options: []) // here "decoded" is of type `AnyObject`, decoded from JSON data // you can now cast it with the right type if let dictFromJSON = decoded as? [String:String] { // use dictFromJSON }} catch let error as NSError { print(error)}
SWIFT 1
var error: NSError?if let jsonData = NSJSONSerialization.dataWithJSONObject(dic, options: NSJSONWritingOptions.PrettyPrinted, error: &error) { if error != nil { println(error) } else { // here "jsonData" is the dictionary encoded in JSON data }}if let decoded = NSJSONSerialization.JSONObjectWithData(jsonData, options: nil, error: &error) as? [String:String] { if error != nil { println(error) } else { // here "decoded" is the dictionary decoded from JSON data }}
慕工程0101907
TA贡献1887条经验 获得超5个赞
let dict = ["0": "ArrayObjectOne", "1": "ArrayObjecttwo", "2": "ArrayObjectThree"]var error : NSError?let jsonData = try! NSJSONSerialization.dataWithJSONObject(dict, options: NSJSONWritingOptions.PrettyPrinted)let jsonString = NSString(data: jsonData, encoding: NSUTF8StringEncoding)! as Stringprint(jsonString)
{ "0" : "ArrayObjectOne", "1" : "ArrayObjecttwo", "2" : "ArrayObjectThree"}
- 3 回答
- 0 关注
- 472 浏览
添加回答
举报
0/150
提交
取消