IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

problème de parsing json


Sujet :

Android

  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2010
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mauritanie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2010
    Messages : 391
    Par défaut problème de parsing json
    Bonjour,
    je veux parser mes données json mais j'ai un problème, lorsque je veux parcourir un tableau json, voici mes données :

    j'ai une classe Categorie qui contient l'id et les sous catégorie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    public  class Categorie  
    {
    private  int  id ;
    private   Categorie  souscategorie;
     
    // getters  et  setters  
    }
    :

    mon problème est que je n'arrive pas à récupérer mes données sous catégorie

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    {"ID":"valeur",""SousCategorie":[{"id":valeur}]}
    voici comment je parse les données :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    JSONObject jsonCategorie = new JSONObject(infoWCS);
     
    	id = jsonCategorie.getString(ID");
     
    			JSONArray  subCateg= jsonCategorie.getJSONArray("SousCategorie");
    			 for(int  i=0;i<subCateg.length();i++)
    			 {
    				souscategorie.id;
    .name=  jsonSub.getString("id");
     
     
     
    			 }
    Merci d'avance

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    322
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 322
    Par défaut
    A tu une erreur dans ton logCat ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {"ID":"valeur",""SousCategorie":[{"id":valeur}]}
    Il y a un guillemet en trop, est ce une faute frappe ?

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2010
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mauritanie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2010
    Messages : 391
    Par défaut
    oui voici l erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    05-10 12:28:57.680: ERROR/AndroidRuntime(2558): Caused by: java.lang.NullPointerException

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    322
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 322
    Par défaut
    A mon avis c'est subCateg qui ne trouve pas SousCatégorie et donc il déclenche un nullpointeur quand tu veux boucler dessus.

    J'ai testé avec ce code et ça marche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    try {
    			JSONObject jsonCategorie = new JSONObject("{\"ID\":\"valeur\",\"SousCategorie\":[{\"id\":\"t\"}]}");
    			JSONArray subCateg = jsonCategorie.getJSONArray("SousCategorie");
    			for(int  i=0;i<subCateg.length();i++)
    			{
    				Log.d("ok", "ok");
     
    			}
    		} catch (JSONException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2010
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mauritanie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2010
    Messages : 391
    Par défaut
    merci beaucoup , je pense que subcatag trouve bien souscategorie car si je change le type de souscategorie par String au lieu de categorie il m affiche un sous categorie au lieu de tous les sous categorie mais si je declare souscategorie de type categorie c'est la que ça bloque


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    JSONArray  subCateg= jsonCategorie.getJSONArray("SousCategorie");
    			 for(int  i=0;i<subCateg.length();i++)
     {
    				souscategorie.id=  jsonSub.getString("id");
     
     
     
    			 }

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    322
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 322
    Par défaut
    L'erreur vient de là (enfin il me semble) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    souscategorie.id=  jsonSub.getString("id");
    Je pense que tu voulais mettre ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    souscategorie.id=  subCateg.getString("id");
    Edit : heu.. je suis plus sur de mon coup là... faut que je teste
    Désolé j'ai rarement fait du Json, Voici une solution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    souscategorie.id = subCateg.getJSONObject(i).getString("id");

  7. #7
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2010
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mauritanie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2010
    Messages : 391
    Par défaut
    merci beaucoup ,oui l erreur vient de la

    souscategorie.id= jsonSub.getString("id");

    mais souscategorie.id= subCatag.getString("id"); ne va pas marcher car je recupere le tableau ensuite le JSONObject

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
    JSONArray  subCateg= jsonCategorie.getJSONArray("SousCategorie");
    			 for(int  i=0;i<subCateg.length();i++)
     {
     
     JSONObject  jsonSub = subCateg.getJSONObject(i);    
    				souscategorie.id=  jsonSub.getString("id");
     
     
     
    			 }

Discussions similaires

  1. Problème de parsing JSON
    Par Arwa89 dans le forum Android
    Réponses: 7
    Dernier message: 30/04/2013, 02h14
  2. Problème pour récupérer JSON et parsing
    Par bigwade dans le forum Android
    Réponses: 13
    Dernier message: 27/02/2013, 18h33
  3. parsing json problème parsing
    Par jojo_ol76 dans le forum Android
    Réponses: 3
    Dernier message: 17/05/2012, 02h22
  4. Problème parsing JSON avec Jackson
    Par drhouse87 dans le forum Android
    Réponses: 6
    Dernier message: 06/03/2012, 19h25
  5. [SAX] Problème de parsing ?
    Par Regis.C dans le forum Format d'échange (XML, JSON...)
    Réponses: 8
    Dernier message: 22/06/2005, 21h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo