user1120008
user1120008

Reputation: 1015

iOS JSON NSString Parse

I have a JSON string as an NSString object in iOS. I want to parse this and pull out the given parameters in the JSON string. Is there a efficient way to parse this or is the only way to search for substrings etc.?

Upvotes: 15

Views: 26256

Answers (2)

jonkroll
jonkroll

Reputation: 15722

The way to do it with iOS 5 is to use the NSJSONSerialization class. You will want to first convert your string to an NSData object, and call the class method JSONObjectWithData

NSData *jsonData = [myJsonString dataUsingEncoding:NSUTF8StringEncoding];
NSError *e;
NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:jsonData options:nil error:&e];

Note that JSONObjectWithData will return either an NSDictionary or an NSArray, depending whether your JSON string represents an a dictionary or an array.

Upvotes: 50

Evan Mulawski
Evan Mulawski

Reputation: 55334

A good framework for converting JSON strings to Objective-C objects (NSArray and NSDictionary) is SBJson (Github).

Usage:

NSDictionary *dict = [myJsonString JSONValue];

Upvotes: 0

Related Questions