2017-09-28 1 views
2

Ceci est lié à cette questionComment faire une boucle bien que les données JSON imbriquées dans Codename One

How to read nested JSON in Codename One

(Je ne sais pas si vous êtes censé modifier et question existante ???)

Ainsi, grâce à la réponse à cette question, je sais maintenant comment récupérer la valeur de balise spécifique que j'ai besoin, mais malheureusement, il ne fonctionne pas si les boucles de données ... par exemple

Comment pourrais-je obtenir les valeurs de mise en boucle de "para" de ce code?

{ 
    "glossary":{ 
    "title":"example glossary", 
    "GlossDiv":{ 
    "title":"S", 
    "GlossList":{ 
     "GlossEntry":{ 
      "ID":"SGML1", 
      "SortAs":"SGML1", 
      "GlossTerm":"Standard Generalized Markup Language", 
      "Acronym":"SGML1", 
      "Abbrev":"ISO 8879:1986", 
      "GlossDef":{ 
       "para":"para1", 
       "GlossSeeAlso":[ 
       "GML", 
       "XML" 
       ] 
      }, 
      "GlossSee":"markup" 
     }, 
     "GlossEntry":{ 
      "ID":"SGML2", 
      "SortAs":"SGML2", 
      "GlossTerm":"Standard Generalized Markup Language", 
      "Acronym":"SGML2", 
      "Abbrev":"ISO 8879:1986", 
      "GlossDef":{ 
       "para":"para2", 
       "GlossSeeAlso":[ 
       "GML", 
       "XML" 
       ] 
      }, 
      "GlossSee":"markup" 
     }, 
     "GlossEntry":{ 
      "ID":"SGML3", 
      "SortAs":"SGML3", 
      "GlossTerm":"Standard Generalized Markup Language", 
      "Acronym":"SGML3", 
      "Abbrev":"ISO 8879:1986", 
      "GlossDef":{ 
       "para":"para3", 
       "GlossSeeAlso":[ 
       "GML", 
       "XML" 
       ] 
      }, 
      "GlossSee":"markup" 
     } 
    } 
    } 
} 
} 

Encore une fois - toute aide est appréciée

Merci

Répondre

2

suivant le modèle de la answer à votre question précédente, vous pouvez le faire:

String path = "glossary/GlossDiv/GlossList" 

int size = result.getSizeOfArray(path); 
if (size > 0) { 
    for (int i = 0; i < size; i++) { 
     String para = result.getAsString(path + "[" + i + "]/GlossEntry/GlossDef/para"); 
     System.out.println(para); 
    } 
} 
+0

Merci encore :-) –