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

Langage Java Discussion :

problème de nom de variable dynamique pour JSONObject()


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Août 2012
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Août 2012
    Messages : 145
    Par défaut problème de nom de variable dynamique pour JSONObject()
    Bonjour,
    Il faut que je puisse créer un nom de variable dynamique pour ma boucle fonctionne correctement.
    Mon problème, à chaque passage, le "JSONObject detail " est incorporé dans le jsonArray et les valeurs de "detail" prend en compte la dernière affectation.
    Je me retrouve seulement avec la dernière société enregistrée.

    Je pensais mettre une variable qui changerait de valeur à chaque passage pour JSONObject mais c'est pas possible.
    Je ne vois pas comment faire,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    JSONObject parent = new JSONObject();
    		           JSONArray jsonArray = new JSONArray();
    	        	   JSONObject detail = new JSONObject();
    		           for (Contact_Pro donnee : LISTE_PRO) {  
    		        	   Log.i("boucle for LISTEPRO", donnee.Societe);
    		        	   detail.put("societe", donnee.Societe);
    		        	   detail.put("adresse1", donnee.Adresse1);
    		        	   detail.put("adresse2", donnee.Adresse2);
    		        	   detail.put("ville ", donnee.Ville);
    		        	   detail.put("standard", donnee.Standard);
    		        	   detail.put("mailgeneral", donnee.Mail);
    		        	   Log.d("output detail", detail.toString(2));
    		        	   jsonArray.put(detail);
     parent.put("contact_pro", jsonArray);
    		           Log.d("output", parent.toString(2));
    		      		}
    voici le logCat:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    ...05-17 10:02:59.409: I/boucle for LISTEPRO(3882): JNL Services
    05-17 10:02:59.419: D/output detail(3882): {
    05-17 10:02:59.419: D/output detail(3882):   "adresse1": "",
    05-17 10:02:59.419: D/output detail(3882):   "mailgeneral": "",
    05-17 10:02:59.419: D/output detail(3882):   "adresse2": "",
    05-17 10:02:59.419: D/output detail(3882):   "societe": "JNL Services",
    05-17 10:02:59.419: D/output detail(3882):   "standard": "02.99.99.99.00",
    05-17 10:02:59.419: D/output detail(3882):   "ville ": ""
    05-17 10:02:59.419: D/output detail(3882): }
    05-17 10:02:59.419: I/boucle for LISTEPRO(3882): Menuiserie Remy Pelerin
    05-17 10:02:59.439: D/output detail(3882): {
    05-17 10:02:59.439: D/output detail(3882):   "adresse1": "ZA Ste CROIX",
    05-17 10:02:59.439: D/output detail(3882):   "mailgeneral": "",
    05-17 10:02:59.439: D/output detail(3882):   "adresse2": "",
    05-17 10:02:59.439: D/output detail(3882):   "societe": "Menuiserie Remy Pelerin",
    05-17 10:02:59.439: D/output detail(3882):   "standard": "02.99.37.38.50",
    05-17 10:02:59.439: D/output detail(3882):   "ville ": "CHATEAUGIRON"
    05-17 10:02:59.439: D/output detail(3882): }
    ...
    et pour " Log.d("output", parent.toString(2));", donc le résultat final
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    ...
    05-17 10:02:59.459: D/output(3882): {
    05-17 10:02:59.459: D/output(3882):   "contact_pro": [
    05-17 10:02:59.459: D/output(3882):     {
    05-17 10:02:59.459: D/output(3882):       "adresse1": "La Fouaye",
    05-17 10:02:59.459: D/output(3882):       "mailgeneral": "contact@satel35.fr",
    05-17 10:02:59.459: D/output(3882):       "adresse2": "",
    05-17 10:02:59.459: D/output(3882):       "societe": "SATEL",
    05-17 10:02:59.459: D/output(3882):       "standard": "02.99.85.62.55",
    05-17 10:02:59.459: D/output(3882):       "ville ": "Saint Gilles"
    05-17 10:02:59.459: D/output(3882):     },
    05-17 10:02:59.459: D/output(3882):     {
    05-17 10:02:59.459: D/output(3882):       "adresse1": "La Fouaye",
    05-17 10:02:59.459: D/output(3882):       "mailgeneral": "contact@satel35.fr",
    05-17 10:02:59.459: D/output(3882):       "adresse2": "",
    05-17 10:02:59.459: D/output(3882):       "societe": "SATEL",
    05-17 10:02:59.459: D/output(3882):       "standard": "02.99.85.62.55",
    05-17 10:02:59.459: D/output(3882):       "ville ": "Saint Gilles"
    05-17 10:02:59.459: D/output(3882):     },
    ...
    Merci pour votre aide
    cedric

  2. #2
    Membre chevronné Avatar de ruscov
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Mars 2007
    Messages
    347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Mars 2007
    Messages : 347
    Par défaut
    Et si tu met
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    detail = new JSONObject();
    dans ta boucle?

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Août 2012
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Août 2012
    Messages : 145
    Par défaut
    effectivement, c'est bon, il me semblait l'avoir essayé !! pff
    j'ai perdu au moins 3h pour cette erreur toute bête Rrrr
    Merci pour votre aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [JSTL] nom de variable "dynamique"
    Par gmonta31 dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 04/05/2006, 13h31
  2. Nom de variable dynamique
    Par mavina dans le forum Linux
    Réponses: 7
    Dernier message: 26/04/2006, 20h48
  3. Réponses: 4
    Dernier message: 13/09/2005, 11h50
  4. Noms de Variables dynamiques
    Par horec dans le forum Langage
    Réponses: 7
    Dernier message: 22/07/2005, 16h47
  5. [SQL SERVER 2000] Noms de variables dynamiques
    Par cassoulet dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 08/09/2004, 11h44

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