2017-08-03 67 views
0

考虑这个JSONNSManagedObject与活性目标C

“data” : [ { 
     - - - - - some user data - - - - - 
     “A” : [ { 
     - - - - A’s data - - — - - - - — - -  
       “a” : [ { 
     - - - - - a’s data - - - - - - - - - - 

    “ a1” : [ { 
     - - — - - b’s data — — — }] } } } ] ] ] 

在此基础上,我需要检查对象a1里面是有或没有。如果有a1,则表示侦听器将使用Reactive objective-C进行更新。任何人都可以帮助我吗?

回答

2

使用以下代码。希望这有助于

/* 
    convert JSON to NSDictionary 
*/ 
NSDictionary *bodyDict = [utility convertStringToDictionary:jsonString]; 

if([bodyDict objectForKey:@“a1”]) 
{ 
    //Post your listener notification 
} 

代码将字符串转换为NSDictionary中

-(NSDictionary *)convertStringToDictionary:(NSString *)jsonString{ 

    NSError * err; 
    NSData *data =[jsonString dataUsingEncoding:NSUTF8StringEncoding]; 
    NSDictionary * response = nil; 

    if(data!=nil){ 
     response = (NSDictionary *)[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:&err]; 
    } 

    return response; 
} 
2

获取JSON数据的唯一a1值。 使用以下行来获得a1值是否在Json中可用,

NSMutableArray *Arr = [[NSMutableArray alloc] init]; 
Arr = [JsonData valueForKeyPath:@"data.A.a.a1"]; 

if(Arr.count == 0) NSLog(@"Update : YES"); 
else NSLog(@"Update : NO");