Objective-C Language
NSJSONSerialization
Sök…
Syntax
- (id) JSONObjectWithData: (NSData *) dataalternativ: (NSJSONReadingOptions) opt-fel: (NSError * _Nullable *) -fel
parametrar
Operatör | Beskrivning |
---|---|
data | Ett dataobjekt som innehåller JSON-data |
välja | Alternativ för att läsa JSON-data och skapa Foundation-objekt. |
fel | Om ett fel inträffar innehåller det vid retur ett NSError-objekt som beskriver problemet. |
Anmärkningar
NSJSONSerialization är tillgängligt i iOS 5.0 och senare Ett objekt som kan konverteras till JSON måste ha följande egenskaper:
Det övre nivåobjektet är en NSArray eller NSDiction.
Alla objekt är exempel på NSString, NSNumber, NSArray, NSDictionary eller NSNull.
Alla ordbordsnycklar är instanser av NSString.
Siffror är inte NaN eller oändlighet.
JSON Parsing med NSJSONSerialization Mål c
NSError *e = nil;
NSString *jsonString = @"[{\"id\": \"1\", \"name\":\"sam\"}]";
NSData *data = [jsonString dataUsingEncoding:NSUTF8StringEncoding];
NSArray *jsonArray = [NSJSONSerialization JSONObjectWithData: data options: NSJSONReadingMutableContainers error: &e];
if (!jsonArray) {
NSLog(@"Error parsing JSON: %@", e);
} else {
for(NSDictionary *item in jsonArray) {
NSLog(@"Item: %@", item);
}
}
Produktion:
Item: {
id = 1;
name = sam;
}
Exempel 2: Använda innehållet i url:
//Parsing:
NSData *data = [NSData dataWithContentsOfURL:@“URL HERE”];
NSError *error;
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
NSLog(@“json :%@”,json);
Exempelsvar:
json: {
MESSAGE = “Test Message";
RESPONSE =(
{
email = "[email protected]";
id = 15;
phone = 1234567890;
name = Staffy;
}
);
STATUS = SUCCESS;
}
NSMutableDictionary *response = [[[json valueForKey:@"RESPONSE"] objectAtIndex:0]mutableCopy];
NSString *nameStr = [response valueForKey:@"name"];
NSString *emailIdStr = [response valueForKey:@"email"];
Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow