我想要遍历并从我在下面给出的json中获得特定价值。
json={"resultMessage":["{\"retain24ErrorMessage\":\"No result data found!\"}","TemplateId or instanceId is empty!"],"isSuccessful":true}
我想得到的值是retain24ErrorMessage值。我尝试了以下内容。
Object JSONArrayCheck = json.get("resultMessage");
String errMsg1 = (String)json.getJSONArray("resultMessage").get(0);
Gson gson = new Gson();
// JsonElement jsonObject = gson.toJsonTree(json.getJSONArray("resultMessage").get(0));
JsonElement jelement = new JsonParser().parse(gson.toJson(errMsg1));
JsonObject jobject = jelement.getAsJsonObject();
但是不起作用并且出现以下错误
12-11 17:17:16.300: W/System.err(1780): java.lang.IllegalStateException: Not a JSON Object: "{\"retain24ErrorMessage\":\"No result data found!\"}"
。你能给我一个用于检索相同的retain24ErrorMessage的演示吗?
答案 0 :(得分:1)
gson.toJson(errMsg1)
需要一个Object,但传递的errMsg1
是一个字符串。
你不需要做这样的事吗?
JsonElement jelement = new JsonParser().parse(errMsg1);