我正忙着处理iPad应用程序,而我的Web服务返回非常简单的JSON数据。一切似乎都很好,我有其他方法做同样的转换没有问题但是,我有一个方法,在做一个整数时返回一个随机字符串 - >字符串转换。
下面的我的userdata对象是由SBJSON解析器创建的NSDictionary。调试[userdata objectForKey:@“UserID”]时的值为1。
但是当我这样做时
NSString *userId = [NSString stringWithFormat:@"%d", [userdata objectForKey:@"UserID"]];
userId中的值是或似乎是一个随机数,例如23425234.我也尝试了我的格式的%d,但结果相同。
答案 0 :(得分:2)
因为它是一个对象,而不是一个int,你会看到对象的地址,相反,你可以这样做:
NSString *userId = [NSString stringWithFormat:@"%@", [userdata objectForKey:@"UserID"]];
^
答案 1 :(得分:2)
尝试:
NSString *userId = [NSString stringWithFormat:@"%d", [[userdata objectForKey:@"UserID"] intValue]];
或者:
NSString *userId = [NSString stringWithFormat:@"%@", [userdata objectForKey:@"UserID"]];
key的对象可能是NSNumber而不是int ...