如何使用swift从Dictionary中检索数据并以字符串形式存储?

时间:2015-07-02 08:39:09

标签: ios string swift dictionary

我正在使用swift创建iOS应用程序。 XCODE版本6.3 我在NSString中存储NSData。这是代码。

var strData = NSString(data: data, encoding: NSUTF8StringEncoding)

现在strData包含这样的值。

**strData: Optional({"result":true,"user_id":2,"role_id":2,"msg":"Signed in successfully.”})**

我想将user_id和role_id存储在2个单独的字符串中。

首先,我将NSString更改为Swift中的普通String

var strData = NSString(data: data, encoding: NSUTF8StringEncoding)
        as String?

当我们打印strData输出时会是这样的。

**strData: Optional("{\"result\":true,\"user_id\":2,\"role_id\":2,\"msg\":\"Signed in successfully.\"}”)**

在我看来,字符串的格式为字典[键值对]

所以我创建了一个这样的字典,

var lognInDetails = Dictionary<Int, String>()

 self.lognInDetails[1] = strData

将字符串存储到字典中。

这一切都很好

问题是我想根据密钥从字典中检索值。

对于user_id键,我想存储值2.

我使用了这段代码,

self.userid = self.lognInDetails[ 1 , "user_id"] as Dictionary<Int, String>

这里的userid是一个String变量。 我只是swift的首发。我有兴趣了解更多关于swift&amp; amp; objective-C.谢谢你的帮助。

2 个答案:

答案 0 :(得分:1)

你可以直接将NSData转换为NSDictionary&amp;然后使用它们的值设置字符串。要将NSdata转换为NSDictionary,请使用

let jsonDict = NSJSONSerialization.JSONObjectWithData(data, options: nil, error: &error) as NSDictionary

答案 1 :(得分:0)

让userId = json?[&#34; user_id&#34;]?。integerValue