2009-10-30 4 views
0

J'ai passé 1 semaine à étudier l'objectif C. Maintenant, je suis assez confus à la partie traitant des données. Mon ami m'a donné un lien http://nrj.playsoft.fr/v3/getQuiz.php?udid=23423455&app=2 et demandez-moi d'écrire une classe pour analyser ce fichier JSON. Je n'avais aucune idée de ce que signifie l'analyse JSON. mais je suis allé en ligne et leva les yeux. J'ai pu en comprendre les bases et ensuite j'ai implémenté un coup de code pour analyser ce JSON. Ce qui est:analyse JSON en utilisant l'objectif C?

-

(void)parseURL 
{ 
    //create new SBJSON object 
    SBJSON *parser = [[SBJSON alloc] init]; 
    NSError *error = nil; 
    //perform request from URL 
    NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://nrj.playsoft.fr/v3/getQuiz.php?udid=23423455&app=2"]]; 
    // Perform request and get JSON back as a NSData object 
    NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:&error]; 

    // Get JSON as a NSString from NSData response 
    NSString *json_string = [[NSString alloc] initWithData:response encoding:NSUTF8StringEncoding]; 

    // parse the JSON response into an object 

    NSDictionary *results = [parser objectWithString:json_string error:&error]; 
    // array just for the "answer" results 
    NSArray *quizes = [results objectForKey:@"quiz"]; 

    NSDictionary *firstQuiz = [quizes objectAtIndex:0]; 
    // finally, the name key 
    NSString *extract = [firstQuiz objectForKey:@"extract"]; 
    NSLog(@"this is: %@", [extract valueForKey:@"extract"]); 

} 

Ceci est le fichier de mise en œuvre, mais dans le fichier d'en-tête je ne pouvais pas déclarer toutes les variables, il affichera des erreurs. J'ai essayé d'exécuter ceci, il n'y a pas d'erreurs, mais je ne suis pas sûr que ce code soit correct ou non. Et mon ami m'a demandé d'écrire une classe dans un projet existant. Je ne sais pas ce qui doit être modifié et ce qui ne l'est pas. Je suis tellement flou en ce moment. Quelqu'un pourrait-il me donner un coup de main? ? Mes sincères remerciements.


Merci pour votre réponse. J'ai téléchargé et ajouté le framework JSON ealier aussi. Je ne suis pas sûr de savoir par où commencer et où finir, ce qui signifie que je devrais faire quand j'ajouterai le framework JSON. Je pourrais comprendre la syntaxe mais je ne suis pas sûr des étapes que je devrais faire. Je suis un débutant dans ce domaine.

+0

Que fait-il ou ne pas faire? –

Répondre

-1

Je recommande de travailler sur le tutoriel MapKit de Ray Wenderlich, surtout si vous êtes un débutant. Il couvre plusieurs problèmes courants de développement iOS, y compris l'analyse des données JSON. section

http://www.raywenderlich.com/2847/introduction-to-mapkit-on-ios-tutorial

« La mise en œuvre » est où son flux JSON est récupéré puis dans « Traçage les données », il utilise la bibliothèque SBJson pour l'analyser.

+0

Il vous sera plus facile de comprendre comment ajouter quelque chose comme ça à un projet existant si vous suivez un tutoriel comme celui-ci qui part de zéro. – wtbgtr

4

Si vous prenez en charge iOS 5.0+, vous devez utiliser NSJSONSerialization intégré. Il s'agit du faster than TouchJSON.

+0

Félicitations, vous venez de répondre à une question qui a presque 4 ans et qui a déjà une réponse. Même si vous avez raison, en octobre 2009, NSJSONSerialization n'a pas encore été inventé. – Fogmeister

+7

@Fogmeister Bienvenue en 2013! La réponse acceptée est obsolète et c'est une excellente raison pour poster une nouvelle mise à jour. Toute personne venant ici à la recherche d'un parseur JSON sait maintenant que Apple a un intégré. –