2017-09-14 97 views
-2

是否有斯威夫特的解決方案,以在字符串這2個鍵/值對的價值?JSON字符串?

"ignoredentities":{"actualite":[68533]}, 
"lastentities":{"actualite":{"uid":3942,"starttime":1504850580},"video":{"uid":4392,"starttime":1504956600}},"count":25} 

我想有2字符串,如:

let ignoredentities = "{"actualite":[68533]}" 

let lastentities = "{"actualite": 
{"uid":3942, 
    "starttime":1504850580 
},"video": 
{"uid":4392, 
    "starttime":1504956600 
} 
},"count":25}" 
+0

'(NS)JSONSerialization'能將'(NS)Data'轉換成'(NS)Array'/'(NS)Dictionary',反之亦然。 '(NS)Data'可以轉換爲'(NS)String'(UTF8),反之亦然。所以是的,這是可能的,只需在SO上逐一尋找每個轉換。 – Larme

+0

凡認爲,從JSON和什麼類型的未來是它存儲?你已經解析它到一個字典? –

+0

@DávidPásztor是它來自一個字典,我試圖字符串(描述:分頁[ 「lastentities」]),但我得到 「可選(<__ NSArrayM 0x7c089d40>(\ n \ n)的\ n)的」 的 –

回答

1

試試下面的代碼

let jsonData = try JSONSerialization.data(withJSONObject: reqDict, options: .prettyPrinted) 
       let reqJSONStr = String(data: jsonData, encoding: .utf8) 
1

JSON字典到字符串:

let data = try JSONSerialization.data(withJSONObject: params, options: .prettyPrinted) 
let dataString = String(data: data, encoding: String.Encoding.utf8) 
print("dataString = \(dataString!)")