Sample code for 30+ languages & platforms
Objective-C

JSON Copy Objects

See more JSON Examples

Copy objects from one JSON document to another.

Chilkat Objective-C Downloads

Objective-C
#import <CkoJsonObject.h>

CkoJsonObject *json1 = [[CkoJsonObject alloc] init];
[json1 UpdateString: @"ID1.cn" value: @"Name"];
[json1 UpdateString: @"ID1.objectGUID" value: @"GUID"];
[json1 UpdateString: @"ID2.cn" value: @"Name"];
[json1 UpdateString: @"ID2.objectGUID" value: @"GUID"];

json1.EmitCompact = NO;
NSLog(@"%@",[json1 Emit]);

//  json1 contains:
//  {
//    "ID1": {
//      "cn": "Name",
//      "objectGUID": "GUID"
//    },
//    "ID2": {
//      "cn": "Name",
//      "objectGUID": "GUID"
//    }
//  }

CkoJsonObject *json2 = [[CkoJsonObject alloc] init];
[json2 UpdateString: @"Name1.ID1.cn" value: @"Name"];
[json2 UpdateString: @"Name1.ID1.objectGUID" value: @"GUID"];
[json2 UpdateString: @"Name1.ID2.cn" value: @"Name"];
[json2 UpdateString: @"Name1.ID2.objectGUID" value: @"GUID"];
[json2 UpdateString: @"Name2.ID3.cn" value: @"Name"];
[json2 UpdateString: @"Name2.ID3.objectGUID" value: @"GUID"];

json2.EmitCompact = NO;
NSLog(@"%@",[json2 Emit]);

//  {
//    "Name1": {
//      "ID1": {
//        "cn": "Name",
//        "objectGUID": "GUID"
//      },
//      "ID2": {
//        "cn": "Name",
//        "objectGUID": "GUID"
//      }
//    },
//    "Name2": {
//      "ID3": {
//        "cn": "Name",
//        "objectGUID": "GUID"
//      }
//    }
//  }

//  Copy Name1, Name2 into json1

int i = 0;
int numMembers = [json2.Size intValue];
while (i < numMembers) {
    CkoJsonObject *jsonObj = [json2 ObjectAt: [NSNumber numberWithInt: i]];
    [json1 AppendObjectCopy: [json2 NameAt: [NSNumber numberWithInt: i]] jsonObj: jsonObj];
    i = i + 1;
}

//  Now see what json1 contains:
NSLog(@"%@",[json1 Emit]);

//  {
//    "ID1": {
//      "cn": "Name",
//      "objectGUID": "GUID"
//    },
//    "ID2": {
//      "cn": "Name",
//      "objectGUID": "GUID"
//    },
//    "Name1": {
//      "ID1": {
//        "cn": "Name",
//        "objectGUID": "GUID"
//      },
//      "ID2": {
//        "cn": "Name",
//        "objectGUID": "GUID"
//      }
//    },
//    "Name2": {
//      "ID3": {
//        "cn": "Name",
//        "objectGUID": "GUID"
//      }
//    }
//  }