L'analyse d'un tableau JSON dans un NSDictionary

Je travaille avec le Weather Underground API pour réaliser une application et j'ai frappé un hic, lors de l'analyse du bloc relatif à sévère des alertes. Le JSON utilise des paires clé-valeur qui ont des sous paires clé-valeur -- qui n'a pas été un problème pour moi, car je peux effectuer par la suite des NSDictionaries de ceux -- mais l'entrée grave des alertes s'est avérée problématique. Voir ci-dessous:

"alerts": [
    {
    "type": "WAT",
    "description": "Flash Flood Watch",
    "date": "3:13 PM EDT on April 28, 2012",
    "date_epoch": "1335640380",
    "expires": "8:00 AM EDT on April 29, 2012",
    "expires_epoch": "1335700800",
    "message": "\u000A...Flash Flood Watch in effect through Sunday morning...\u000A\u000AThe National Weather Service in Charleston has issued a\u000A\u000A* Flash Flood Watch for portions of northeast Kentucky... (Note: I trimmed this for length's sake),
    "phenomena": "FF",
    "significance": "A"
    }
]

Les "alertes" de la paire se distingue des autres je ai été en mesure d'analyser parce qu'il a cette [ ] support entourant le sous-valeurs et je ne suis pas sûr de la façon de l'effacer afin que je puisse accéder à la subvalues. Dans les autres exemples que j'ai été en mesure d'analyser, il dispose seulement d'un { } crochets, et non pas les deux les { } et entre crochets []. Pour référence, les crochets sont toujours présents, même quand il n'y a pas de graves alertes météo... en l'occurrence la "alertes" paire renvoie les crochets [ ] sans sous-paires présent.

Est il possible que je peux enlever les crochets [ ] à partir de la NSDictionary, ou sinon de les ignorer? Tout conseil serait apprécié!


De référence et d'aide pour le dépannage, voici comment je suis de l'analyse du reste du document JSON avec succès:

1) Créer un NSDictionary de la crue JSON

//Process Weather Call
NSError* error;
NSDictionary* json = [NSJSONSerialization JSONObjectWithData:responseData options:kNilOptions error:&error];

2) Créer des dictionnaires imbriqués json paires

NSDictionary *current_observation = [json objectForKey:@"current_observation"];

3) Affecter des valeurs

NSString* weather;
weather = [current_observation objectForKey:@"weather"];

De sorte que le résultat final serait une chaîne qui dit "Partiellement Nuageux" ou quelque chose, avec de nombreux temps des valeurs que je n'ai pas montré. Ces analyser avec succès car ils ont seulement le champ d'application des crochets { }, et pas les crochets [].

OriginalL'auteur Anthony Neace | 2012-04-28