Converting an NSArray of Dictionaries to JSON array in iOS Converting an NSArray of Dictionaries to JSON array in iOS json json

Converting an NSArray of Dictionaries to JSON array in iOS


NSDictionary *firstJsonDictionary = [NSDictionary dictionaryWithObjectsAndKeys:                            @"10.010490", @"latitude",                            @"76.360779", @"longitude",                            @"30.833334", @"altitude",                            @"11:17:23", @"timestamp",                            @"0.00", @"speed",                            @"0.00", @"distance",                            nil];  NSDictionary *secondJsonDictionary = [NSDictionary dictionaryWithObjectsAndKeys:                            @"10.010490", @"latitude",                            @"76.360779", @"longitude",                            @"30.833334", @"altitude",                            @"11:17:23", @"timestamp",                            @"0.00", @"speed",                            @"0.00", @"distance",                            nil];NSMutableArray * arr = [[NSMutableArray alloc] init];[arr addObject:firstJsonDictionary];[arr addObject:secondJsonDictionary];NSData *jsonData2 = [NSJSONSerialization dataWithJSONObject:arr options:NSJSONWritingPrettyPrinted error:&error];NSString *jsonString = [[NSString alloc] initWithData:jsonData2 encoding:NSUTF8StringEncoding];NSLog(@"jsonData as string:\n%@", jsonString);


The simplest and best approach !!!

To convert NSArray or NSMutableArray into jsonString you can first convert it into NSData and then further convert that into a NSString. Use this code

NSData* data = [ NSJSONSerialization dataWithJSONObject:yourArray options:NSJSONWritingPrettyPrinted error:nil ];NSString *jsonString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

It helped me and hope it helps you as well. All the best.


I would recommend the SBJson-Framework.

Converting an NSMutableArray is as simple as NSString *jsonString = [yourArray JSONRepresentation];

Edit: Jack Farnandish is right u have to transform it into a NSDictionary before you can convert it to Json. In my example the NSMutableArray has to contain the Dictionary. The Array is only needed to create the square brackets at the beginning and the end of the string.