Maison >Java >javaDidacticiel >Comment analyser une chaîne JSON contenant un JSONArray sous Android ?

Comment analyser une chaîne JSON contenant un JSONArray sous Android ?

DDD
DDDoriginal
2024-11-19 15:16:02941parcourir

How to Parse a JSON String Containing a JSONArray in Android?

Analyse de la chaîne JSON dans JSONArray sous Android

Lorsque vous travaillez avec des services Web, il est souvent nécessaire d'analyser les réponses JSON en structures de données utilisables. Un scénario courant consiste à convertir une chaîne JSON en JSONArray.

Problème :

Vous essayez de convertir une chaîne JSON valide en JSONArray à l'aide du code suivant :

JSONArray jsonArray = new JSONArray(readlocationFeed);

Cependant, vous rencontrez une exception d'incompatibilité de type.

Réponse :

La chaîne JSON fournie représente un objet, indiqué par le bouclé croisillons "{}". Pour analyser correctement ce JSON, vous devez utiliser un JSONObject, pas un JSONArray. Mettez à jour le code comme suit :

JSONObject jsonObject = new JSONObject(readlocationFeed);

Une fois que vous avez le JSONObject, vous pouvez accéder au tableau "locations" intégré en utilisant la méthode getJSONArray() :

JSONArray jsonArray = jsonObject.getJSONArray("locations");

Maintenant, vous peut parcourir les éléments du JSONArray et traiter chaque objet de localisation individuellement :

for (int i = 0; i < jsonArray.length(); i++) {
    JSONObject locationObject = jsonArray.getJSONObject(i);
}

En suivant ces étapes, vous pouvez analyser avec succès la chaîne JSON fournie dans un JSONArray et accéder à ses éléments dans le développement Android.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn