我的 NSDictionary 输出与 NSLog 显示:
{
"filename" : "mytest100.txt",
"filedesc" : "File Description here",
"data" : [
]
}
但是当我这样做时:NSString *filename = [dict objectForKey:@"filename"];
它在这条线上崩溃。
我究竟做错了什么?这似乎微不足道。
我的 NSDictionary 输出与 NSLog 显示:
{
"filename" : "mytest100.txt",
"filedesc" : "File Description here",
"data" : [
]
}
但是当我这样做时:NSString *filename = [dict objectForKey:@"filename"];
它在这条线上崩溃。
我究竟做错了什么?这似乎微不足道。
试试这个:
NSDictionary *d = [NSDictionary dictionaryWithObject:@"foo" forKey:@"bar"];
NSLog(@"%@", d);
输出是:
{
bar = foo;
}
请注意,键或值中没有记录引号?除非您的键和值的格式为 @"\"foo\"",否则我的猜测是您那里并没有真正的字典。
我会把钱放在代表 JSON 的字符串上。崩溃是因为 objectForKey: 是字符串上无法识别的选择器。
从您收到的错误消息中,该dict
变量不包含 an NSDictionary
,而是 and NSString
。
跟踪您的代码以查找您分配dict
变量的位置,您肯定会看到它被设置为不是字典的东西。