嗨我正在返回一个json字符串,如下所示:
{data,[{"id":1,"text":"blabla"},{"id":2,"text":"blabla2"}]}
当我尝试使用NSLog打印时:
NSLog(@"id: %@",[temp objectForKey:@"id"]);
我得到大数字,而不是id。 如果我将id用引号括起来,那就没事了。
当整数没有引号时,有没有办法解码字符串?
THX!
答案 0 :(得分:1)
看起来你必须使用integerValue方法将对象转换为整数。
NSLog(@"id: %d",[[temp objectForKey:@"id"]integerValue]);
感谢每个人的帮助。
答案 1 :(得分:0)
你的格式有点不稳定。同样-objectForKey:
为参数提供NSString,因此请务必在引号前添加@
以表示NSString常量。
NSLog(@"id: %@", [temp objectForKey:@"id"]);
答案 2 :(得分:0)
问题在于您的字符串格式。而不是
NSLog(@"id: %@),[temp objectForKey:@"id"];
尝试使用:
NSLog(@"id: %d),[temp objectForKey:@"id"];
%@仅用于字符串,在您的情况下,当未引用ID时,它是一个整数,您应该使用%d代替。