ich einen Dienst schlagen und manchmal so etwas wie dies immer wieder:Wie erkennt man, ob die Rückgabe JSONObject oder JSONArray mit JSON-simple (Java) ist?
{ "param1": "value1", "param2": "value2" }
und wie dies manchmal immer Rückkehr:
[{ "param1": "value1", "param2": "value2" },{ "param1": "value1", "param2": "value2" }]
Wie kann ich feststellen, was ich bekomme? Beide in einen String bewerten, wenn ich getClass(), aber wenn ich versuche, dies zu tun:
json = (JSONObject) new JSONParser().parse(result);
auf dem zweiten Fall erhalte ich eine Ausnahme
org.json.simple.JSONArray cannot be cast to org.json.simple.JSONObject
Wie dies zu vermeiden? Ich möchte nur wissen, wie ich überprüfen kann, was ich zurückbekomme. (Der erste Fall wird manchmal []
drin haben, also kann ich keinen Index machen und ich hätte einen saubereren Weg als nur das erste Zeichen zu überprüfen.
Es muss eine Art von Methode geben, die das überprüft?
Es sollte ziemlich einfach sein zu überprüfen, ob der String mit '[]' beginnt und endet. Was hast du probiert? – ApproachingDarknessFish
Ich kann sagen, ob es beginnt und endet mit [], aber dann ist das Problem, dass ich eine Zeichenfolge "[{\ param1 \" ...}, {...}] "bekomme, die ich nicht konvertieren kann in ein Array wieder. – PixMach