Objective c 检查空值内的嵌套字典
我从JSON随机获得Objective c 检查空值内的嵌套字典,objective-c,Objective C,我从JSON随机获得null值。我想删除值为null或nil的键,您显示的不是NSDictionary,而是JSON字符串。首先,应该将其反序列化为具有与其一致的结构的对象,然后相应地使用(例如使用)。 如果出于任何原因不需要反序列化,可以将其视为字符串并将其添加为值,如: "data": { "assetID": "VMSA0000000000310652", "lastModified": null, "locale": {
null
值。我想删除值为null
或nil
的键,您显示的不是NSDictionary,而是JSON字符串。首先,应该将其反序列化为具有与其一致的结构的对象,然后相应地使用(例如使用)。
如果出于任何原因不需要反序列化,可以将其视为字符串并将其添加为值,如:
"data": {
"assetID": "VMSA0000000000310652",
"lastModified": null,
"locale": {
"MetadataAlbum": {
"Artists": {
"Artist": {
"ArtistName": "Various Artists",
"ArtistRole": null
}
},
"Publishable": "true",
"genres": {
"genre": {
"extraInfos": null,
}
},
其中myJSON是ObjC中的整个JSON字符串,
null
的等价物是[NSNull null]
,例如,string
是字典中的一个字段,类型为NSString
,它可能是null
。在使用之前,您应该通过[dictionary[@“string”]iskindof类:[NSString类]]
进行检查。与NSNumber
或其他类型相同。如果dictionary[@“string”]
为null
或不存在,则条件将返回NO
。获取数据后,我保存在NSUserDefault
中,因此它将崩溃。所以需要检查键的所有值。使用嵌套字典,我可以得到多达100个键和值。@RahulParikh不需要检查所有键和值。只需在使用任何值之前进行检查。当我在字典中获得空值时,在这之后尝试添加NsUserdefault
我会得到如下错误。[用户默认值]尝试设置非属性列表对象
[NSUserDefaults setObject:myJSON forKey:@"JSONString"]