如何将自定义值插入现有的 Plist 数组数据?

How To Insert Custom Values Into Existing Plist Array Data?

我正在尝试将一些额外的数据插入到我的 propertylist 数组数据中。

我的实际情况如下:

我正在从服务器获取一些 JSON 数据并直接加载到 plist。在这个 plist 中,我必须添加一些带有类型的自定义键和值。 我需要在主题数组项中添加 isChildlevel 值。请查看下面的图片,我有 red marked,我想要实现的目标。

我的JSON回复:

{ 
   "response":{ 
      "A":{ 
         "name":"Arun",
         "age":"20",
         "city":"SFO",
         "subject":[{
            "place":SFO
        }]
      },
      "B":{ 
         "name":"Benny",
         "age":"20",
         "city":"SFO",
         "subject":[{
            "place":SFO
            },
            {
            "place":ADS
        }]
    },
      "C":{ 
         "name":"Nani",
         "age":"30",
         "city":"SFO",
      }
   },
   "inprogressdata":{ 
   },
   "dataspeed":"112 m..."
}

我的 Plist :

我的代码:

NSError *error;
        NSDictionary *JSON = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves | NSJSONReadingMutableContainers error:&error];
        NSDictionary *response = JSON[@"response"];
        NSArray *keys = [response allKeys];
        NSMutableArray *objects = [NSMutableArray new];

        for (NSString *key in keys) {
            NSMutableDictionary *object = response[key];
            [object setObject:[NSNumber numberWithInt:0] forKey:@"level"];
            [object setObject:[NSNumber numberWithBool:YES] forKey:@"isParent"]; // Here I am adding isParent easily
            [objects addObject:object];

            //NSLog(@"SIGNALEVENT :%@",[object valueForKey:@"subject"]);
            //Here I need to add isChild Boolean and level values under the subject within subject Items like above Image
        }

MY Issue : 需要在所有项目的主题下添加 isChildlevel kyes 和 values,如上图!

for (NSString *key in keys) {
        NSMutableDictionary *object = response[key];
        NSMutableArray * subjectArray = object[@"subject"];
        for (NSMutableDictionary * dict in subjectArray) {
            [dict setObject:[NSNumber numberWithBool:true] forKey:@"isChild"];
            [dict setObject:[NSNumber numberWithInt:1] forKey:@"level"];
        }
    }