我将来自 web 服务的 json 接收到 NSMutableData 中。
使用 TouchJson 将其转换为 NSDictionary。
NSDictionary *dictionary = [[CJSONDeserializer deserializer] deserializeAsDictionary:responseData error:&error];
NSString *strData = [dictionary objectForKey:@"cars"];
然后我从该字典的键中检索一个字符串。
字符串如下所示
{
b = "http://schemas.datacontract.org/";
car = (
{
"car_name" = "Honda Civic";
year = 2011;
"dealer" = "local honda dealer";
"bought on" = {
nil = 1;
};
"license_number" = 1234567;
status = ReadyToGo;
}
)};
本质上,“汽车”键可以有“n”条记录。
当我尝试将上述内容转换为 NSData 使用
NSData *jsonData = [strData dataUsingEncoding:NSUTF8StringEncoding];
并且
NSData *jsonData = [strData dataUsingEncoding:[NSString defaultCStringEncoding]];
但我明白了
[__NSCFDictionary dataUsingEncoding:]: unrecognized selector sent to instance 0x532bb70
我已经尝试了一些其他可用的编码,但 xcode 仍然抛出。
如何确定正在使用的编码?
这是我第一次尝试在objective-c 中去实现json。
我在这里错过了什么/做错了什么?
谢谢