2016-09-26 108 views
0

我是新的Swift.My json详细如下。如何从AP0词典中获得'assdata'字典。请详细简要介绍一步一步。如何在Swift中从NSDictionary获取NSDictionary?

"AP0": { 
"assdata": "{ 
      \"Description\":\"Test\", 
      \"Service Requested\":\" Equipment\", 
      \"Requested For\":\"Chandan\", 
      \"Requested Location\":\"\\\\Locations\\\\SBCBSC\\\\ SBCBSC - MAIN\", 
      \"Requested By\":\"Chandan\", 
      \"Request Id\":\"100067809074\", 
      \"datastatus\":\"true\"}", 
"Linked Form": "Equipment", 
"System Record ID": "17213450626", 
"Submitted By": "Chandan", 
"Linked Business Object": "Request", 
"Linked Record": "100067809074-0", 
"datastatus": "true" 
} 

在此先感谢。

+1

将[NSDictionary转换为Swift Dictionary]可能出现重复(http://stackoverflow.com/questions/24569447/convert-nsdictionary-to-swift-dictionary) – pedrouan

+0

您在哪个变量中存储了这个响应,并在哪里?显示那部分代码。 –

回答

1

你可以试试这个。

let myJSON = try NSJSONSerialization.JSONObjectWithData(urlData!, options: NSJSONReadingOptions.MutableContainers) as! NSDictionary 

      let keys = myJSON.allKeys 
      print(keys) 

      let values = myJSON.allValues 
      print(values) 

      let dict = values[2] 
      print(dict) 

      let dictAssdata = dict["assdata"] 
      print(dictAssdata) 

希望它能帮助你。

+0

谢谢@sahil_saini –

+1

对于我in 0 ..

1

您的密钥assdata包含字符串JSON响应,以便从中获取Dictionary需要将其转换为第一个数据。

if let jsonStr = yourResponse["assdata"] as? String { 
    if let data = jsonStr.dataUsingEncoding(NSUTF8StringEncoding) { 
     do { 
      let dic = try NSJSONSerialization.JSONObjectWithData(data, options: []) as? [String:AnyObject] 
     } catch let error as NSError { 
      print(error) 
     } 
    } 
} 
+0

如果条件为 –

+0

尚未进入第一个Chandan - 没有循环。 –

+0

@ChandanJee你可以显示你的json解析代码,会更加halpful。 –