Comment faire pour récupérer toutes les nœuds et les nœuds enfants de l'objet JSON en java?

Je veux récupérer tous les nœuds de la ci-dessous d'objet JSON. Par exemple
résultat, identification, de paiement, etc.

{
    "result": {
        "identification": {
            "transactionid": "Merchant Assigned ID",
            "uniqueid": "d91ac8ff6e9945b8a125d6e725155fb6",
            "shortid": "0000.0005.6238",
            "customerid": "customerid 12345"
        },
        "payment": {
            "amount": "2400",
            "currency": "EUR",
            "descriptor": "order number"
        },
        "level": 0,
        "code": 0,
        "method": "creditcard",
        "type": "preauthorization",
        "message": "approved",
        "merchant": {
            "key1": "Value1",
            "key0": "Value0"
        }
    },
    "id": 1,
    "jsonrpc": "2.0"
}

J'ai utilisé le code suivant:

JSONObject partsData = new JSONObject(returnString);
Iterator<String> iterator = jsonObject.keys();

while (iterator.hasNext()) {
    String result=iterator.next();
    System.out.println(result);
}

Mais le résultat que j'obtiens est:

id
result
jsonrpc

Comment puis-je obtenir tous les noms de noeud?

Vous venez d'effectuer une itération sur le premier niveau de clés, mais votre clé "résultat" qui pointe vers un autre JSONObject contenant un autre niveau de clés.
Si vous avez besoin d'analyser plusieurs choses dans votre json, je recommande d'utiliser jackson bibliothèque.

OriginalL'auteur AGM | 2015-06-24