Android (JSONObject) Comment parcourir un object JSON plat pour obtenir chaque clé et chaque valeur

Mes ques est simple mais personne ne l’a demandé ni répondu.

J’ai un JSON à plat:

{"number1":"value1", "number2":"value2", "number3":"value3" } 

Je peux le définir sur un JSONObject très bien. Cependant, je ne sais pas comment parcourir chaque élément et obtenir sa chaîne de caractères et sa chaîne de valeur.

Quelqu’un peut-il fournir un code efficace pour utiliser JSONObject? Ce que je veux vraiment, c’est obtenir la clé et la valeur de chaque object sans connaître au préalable la clé ni la valeur.

Merci d’avance.

Utilisez l’iterator keys() pour parcourir toutes les propriétés et appelez get() pour chacune.

 Iterator iter = json.keys(); while (iter.hasNext()) { Ssortingng key = iter.next(); try { Object value = json.get(key); } catch (JSONException e) { // Something went wrong! } } 

Version courte de la réponse de Franci:

 for(Iterator iter = json.keys();iter.hasNext();) { Ssortingng key = iter.next(); ... } 

Vous devez utiliser la méthode keys() ou names() . keys() vous donnera un iterator contenant tous les noms de propriétés Ssortingng dans l’object, alors que names() vous donnera un tableau de tous les noms de chaînes clés.

Vous pouvez obtenir la documentation JSONObject ici

http://developer.android.com/reference/org/json/JSONObject.html

Jetez un oeil à la référence JSONObject:

http://www.json.org/javadoc/org/json/JSONObject.html

Sans utiliser réellement l’object, il semble que l’utilisation de getNames () ou de keys () qui retourne un Iterator est la voie à suivre.