Parase JSON в приложении iphone с json-фреймворком - PullRequest
1 голос
/ 19 мая 2011

я нашел этот фреймворк, пользователю это кажется простым, http://stig.github.com/json-framework/. В примере у него есть этот json:

{ "resultats": { "": Новости Игроки [ { "ном": "Жан Мартин", "Оценка": 10000 }, { "nom": "Пьер Дюпон", "Оценка": "9000" }, { "nom": "Алиса Бато", "Оценка": "8500" } ] } }

и он это так излагает:

NSDictionary *json    = [myJSON JSONValue];

//récupération  des résultats
NSDictionary *resultats    = [json objectForKey:@"resultats"];

//récupération du tableau de Jouers
NSArray *listeJoueur    =  [resultats objectForKey:@"joueurs"];

//On parcourt la liste de joueurs
for (NSDictionary *dic in listeJoueur) {

//création d'un objet Joueur
Joueur *joueur = [[Joueur alloc] init];

//renseignement du nom
joueur.nom = [dic objectForKey:@"nom"];

//renseingement du score
joueur.score = [[dic objectForKey:@"score"] intValue];

Но я, у меня нет массива в моем JSON. Это мой JSON:

{ "escarrival": "НТБ", "escdepart": "DJE", "estarrival": "08,24", "estdepart": "06,27", "flynumber": "TU 0286" , "fstatuts": "Vol atterri», "proarrival": "08,25", "prodepart": "06,30", "realarrived": "----", "realdepart": "06,27"}

Как я могу пересмотреть это, пожалуйста? Thankx

1 Ответ

2 голосов
/ 19 мая 2011

Вам не нужно разбирать его, просто извлеките объекты для ключей.

    NSDictionary *jsonDict    = [myJSON JSONValue];

    //création d'un objet Joueur
    Joueur *joueur = [[Joueur alloc] init];

    //renseignement du nom
    joueur.escarrival = [jsonDict objectForKey:@"escarrival"];

    joueur.escdepart = [jsonDict objectForKey:@"escdepart"];

    joueur.estarrival = [jsonDict objectForKey:@"estarrival"];
    joueur.estdepart = [jsonDict objectForKey:@"estdepart"];
    joueur.flynumber = [jsonDict objectForKey:@"flynumber"];
    joueur.fstatuts = [jsonDict objectForKey:@"fstatuts"];
    joueur.flynumber = [jsonDict objectForKey:@"flynumber"];
    joueur.proarrival = [jsonDict objectForKey:@"proarrival"];
    joueur.prodepart = [jsonDict objectForKey:@"prodepart"];
    joueur.realarrived = [jsonDict objectForKey:@"realarrived"];
    joueur.realdepart = [jsonDict objectForKey:@"realdepart"];

Edit:

Для лучшего понимания NSDictionary прочитайте Темы программирования коллекций от Apple

...