Swift编程中如何解析NSMutableDictionary?
How to parse NSMutableDictionary in Swift programming?
在我的苹果手表界面控制器中 "reply" 对象在 NSDictionary 中包含 Json 响应。这是我的回复,我需要以下回复中的 "accountName"。如何在 Swift 编程中解析它。
[Accounts: (
{
accountName = "ABCD";
idNumber = 114000093;
email = "xyz@gmail.com";
index = 0;
nickName = "Suites";
},
{
accountName = "EFGH";
idNumber = 114000094;
email = "abc@gmail.com";
index = 1;
nickName = "Sultan";
}
)]
我试过如下:
WKInterfaceController.openParentApplication(["request" : "GetData"], reply: { (reply, error) -> Void in
println(reply)
self.accountNames = reply["Accounts"] as? NSMutableArray
println(self.accountNames)
这个很简单,大家可以自己试试,也可以google,例子很多很多,大家稍微复习一下就可以了
顺便说一句,你可以这样试试,
let accountArray : NSArray = reply.objectForKey("Accounts") as! NSArray
let accountDic : NSDictionary = accountArray.objectAtIndex(0) as! NSDictionary
let accountName : NSString = accountDic.valueForKey("accountName") as! NSString
希望对你有所帮助。
试试这个:
let accountInfos = (reply.valueForKey("Accounts") as [NSDictionary]).map {
YourModelClass(accountName: [=10=]["accountName"] as String, idNumber: [=10=]["idNumber"] as String ..... same for all other)
}
self.yourMutableArray.addObjectsFromArray(accountInfos)
let accountName = (yourMutableArray.objectAtIndex(0)as YourModelClass).accountName
println(accountName)
还有你的模特 class :
class YourModelClass : NSObject {
var accountName : String?
.
.
init(accountName:String, ......) {
self.accountName = accountName
}
在我的苹果手表界面控制器中 "reply" 对象在 NSDictionary 中包含 Json 响应。这是我的回复,我需要以下回复中的 "accountName"。如何在 Swift 编程中解析它。
[Accounts: (
{
accountName = "ABCD";
idNumber = 114000093;
email = "xyz@gmail.com";
index = 0;
nickName = "Suites";
},
{
accountName = "EFGH";
idNumber = 114000094;
email = "abc@gmail.com";
index = 1;
nickName = "Sultan";
}
)]
我试过如下:
WKInterfaceController.openParentApplication(["request" : "GetData"], reply: { (reply, error) -> Void in
println(reply)
self.accountNames = reply["Accounts"] as? NSMutableArray
println(self.accountNames)
这个很简单,大家可以自己试试,也可以google,例子很多很多,大家稍微复习一下就可以了
顺便说一句,你可以这样试试,
let accountArray : NSArray = reply.objectForKey("Accounts") as! NSArray
let accountDic : NSDictionary = accountArray.objectAtIndex(0) as! NSDictionary
let accountName : NSString = accountDic.valueForKey("accountName") as! NSString
希望对你有所帮助。
试试这个:
let accountInfos = (reply.valueForKey("Accounts") as [NSDictionary]).map {
YourModelClass(accountName: [=10=]["accountName"] as String, idNumber: [=10=]["idNumber"] as String ..... same for all other)
}
self.yourMutableArray.addObjectsFromArray(accountInfos)
let accountName = (yourMutableArray.objectAtIndex(0)as YourModelClass).accountName
println(accountName)
还有你的模特 class :
class YourModelClass : NSObject {
var accountName : String?
.
.
init(accountName:String, ......) {
self.accountName = accountName
}