Ios JSON:NSString stringWithContentsOfURL。。。流中为null时,崩溃
环境:使用Xcode 4.3的iOS 4.3++ 当我实现以下返回带有空值的数据的字符串时,我总是遇到iOS/Xcode崩溃:Ios JSON:NSString stringWithContentsOfURL。。。流中为null时,崩溃,ios,json,parsing,nsstring,nsnull,Ios,Json,Parsing,Nsstring,Nsnull,环境:使用Xcode 4.3的iOS 4.3++ 当我实现以下返回带有空值的数据的字符串时,我总是遇到iOS/Xcode崩溃: [NSString stringWithContentsOfURL:myURL encoding:NSUTF8StringEncoding error:&error]; NSDictionary *myResult = (NSDictionary *)[myString JSONValue]; 结果是: -[NSNull isEqualToString:]
[NSString stringWithContentsOfURL:myURL encoding:NSUTF8StringEncoding error:&error];
NSDictionary *myResult = (NSDictionary *)[myString JSONValue];
结果是:
-[NSNull isEqualToString:]: unrecognized selector sent to instance 0x17315e8
当数据流不包含空值时(大多数情况下),它可以正常工作。
这是一个已知的问题吗
有什么补救办法吗 您还可以修复来自源的数据。在几乎所有的web服务交互中,我都使用COALESCE on查询和SP来确保输出的数据总是一致的。您可以在前面进行检查:NSDictionary*myResult=(NSDictionary*)[myString JSONValue];e、 g.NSDictionary*myResult=nil;如果([myString length]>0){myResult=(NSDictionary*)[myString JSONValue];}您发布的代码没有意义。你似乎在使用图书馆时没有告诉我们是哪一个。这是一个有趣的想法。。。对于服务器(Oracle或其他)。最好提供干净的数据。