NSString键值

问题描述:

NSString *userUpdate = [NSString stringWithFormat:@"grant_type=password&Password=%@&UserName=%@&SchoolId=1",[params valueForKey:@"UserName"@"Password"]]; 

当我运行此代码时,我收到一个错误。这段代码是否正确?NSString键值

+0

请编辑该问题,并应用必要的格式,使其更明智 – raki

NSDictionary使用valueForKey仅获得一个值。
为了获得像[params valueForKey:@"Password"]

密码访问用户名使用类似语法[params valueForKey:@"UserName"]

不能得到像[params valueForKey:@"UserName"@"Password"]

以下两个值同时使用的示例代码:

NSString *userUpdate = [NSString stringWithFormat:@"grant_type=password&Password=%@&UserName=%@&SchoolId=1",[params valueForKey:@"Password"],[params valueForKey:@"UserName"]]; 

代码中的问题是您写了%@两次并且只提供了单个值,这是错误背后的主要原因。

NSDictionary中,当时您只能使用valueForKey获得一个值。

使用此代码

NSString *userUpdate = [NSString stringWithFormat:@"grant_type=password&Password=%@&UserName=%@&SchoolId=1",[params valueForKey:@"Password"],[params valueForKey:@"UserName"]]; 
+0

你可以添加更多的描述到你的答案,让OP得到清晰我dea他做错了什么 – raki