Maison > Java > javaDidacticiel > Comment accéder aux clés JSON dynamiques dans les résultats JSON imbriqués ?

Comment accéder aux clés JSON dynamiques dans les résultats JSON imbriqués ?

Patricia Arquette
Libérer: 2024-11-06 15:01:02
original
321 Les gens l'ont consulté

How to Access Dynamic JSON Keys in Nested JSON Results?

Comment accéder aux clés JSON dynamiques dans les résultats JSON imbriqués

Problème :

Vous avez un résultat JSON imbriqué avec dynamique clés, telles que "141", "8911", etc. Vous devez accéder au contenu de ces clés dynamiques, telles que les valeurs "count" ou "more_description".

JSON :

{
 "status": "OK",
 "search_result": [

            {
                "product": "abc",
                "id": "1132",
                "question_mark": {
                    "141": {
                        "count": "141",
                        "more_description": "this is abc",
                        "seq": "2"
                    },
                    "8911": {
                        "count": "8911",
                        "more_desc": "this is cup",
                        "seq": "1"
                    }
                },
                "name": "some name",
                "description": "This is some product"
            },
            {
                "product": "XYZ",
                "id": "1129",
                "question_mark": {
                    "379": {
                        "count": "379",
                        "more_desc": "this is xyz",
                        "seq": "5"
                    },
                    "845": {
                        "count": "845",
                        "more_desc": "this is table",
                        "seq": "6"
                    },
                    "12383": {
                        "count": "12383",
                        "more_desc": "Jumbo",
                        "seq": "4"
                    },
                    "257258": {
                        "count": "257258",
                        "more_desc": "large",
                        "seq": "1"
                    }
                },
                "name": "some other name",
                "description": "this is some other product"
            }
       ]
}
Copier après la connexion

Solution :

Pour accéder au contenu des clés JSON dynamiques, suivez ces étapes :

  1. Obtenez le JSONObject représentant l'objet "question_mark" en utilisant JSONObject.getJSONObject("question_mark").
  2. Utilisez JSONObject.keys() pour obtenir un itérateur des clés dynamiques.
  3. Parcourez les clés à l'aide de l'itérateur. Méthodes hasNext() et Iterator.next().
  4. Pour chaque clé dynamique, utilisez JSONObject.getJSONObject(String key) pour obtenir le JSONObject correspondant représentant la valeur dynamique.
  5. Accédez aux valeurs souhaitées à partir du JSONObject représentant la valeur dynamique.

Code Java :

JSONObject questionMark = searchResult.getJSONObject("question_mark");
Iterator keys = questionMark.keys();

while(keys.hasNext()) {
    String currentDynamicKey = (String)keys.next();
    JSONObject currentDynamicValue = questionMark.getJSONObject(currentDynamicKey);

    // Access and manipulate the content of the currentDynamicValue...
}
Copier après la connexion

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 de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal