Ich muss den Wert von RecordOne aus folgenden JSON herausziehen.Herausziehen Wert der Schlüssel in JSON mit Java, wenn der Schlüssel unter der Hierarchie ist
{
"errors": [],
"data": {
"paging": {
"RecordOne": 8,
"RecordTwo": 9,
"recordThree": 2,
"totalNumberOfRecords": 86052
},
"products": [
{
"testabstract": "test data",
"authors": "Frank Jr.",
"invertedauthors": "Frank VJr.",
"formatCode": "KND"
}
]
}
}
Ich bin mit Java als Sprache und JSON-Objekt, das gleiche zu erreichen, finden Sie, was ich verwende:
protected String getTokenValueUnderHeirarchy(String responseString){
JSONObject json = new JSONObject(responseString);
String val= json.getJSONObject("data").getJSONObject("paging").getString("RecordOne");
System.out.println("val::"+val);
return val;
}
Ich erhalte Wert von val = 1, sollte es sein 8
Wenn ich versuche, Wert zu suchen, für den Schlüssel totalNumberOfRecords mit dem gleichen Code gibt es richtigen Wert, die 86052 ist
ich weiß, es ist etwas, Schweller y, aber ich kann es nicht fassen.
getInt nicht helfen, die JSON ich gegeben habe beispielsweise Antwort ist erhalte ich nach einer GET-Anforderung in Postman schlagen Mit getInt gab mir auch 1 als Ausgabe. – SSabharwal
Ich habe einen schnellen (nicht den besten) JUnit-Test hinzugefügt, der zeigt, dass dieser Befehl sowohl mit getString als auch mit getInt ausgeführt wird. – nadnavillus
Ich merke auch, dass dein original JSON nicht ganz korrekt ist. Die Validierung schlägt fehl, da ein abschließendes "}" fehlt. Das könnte am Beispiel nur ein schlechter Schnitt sein. – nadnavillus