JSON在java中遍历

时间:2014-12-11 11:50:43

标签: java json

我想要遍历并从我在下面给出的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的演示吗?

1 个答案:

答案 0 :(得分:1)

gson.toJson(errMsg1)需要一个Object,但传递的errMsg1是一个字符串。

你不需要做这样的事吗?

JsonElement jelement = new JsonParser().parse(errMsg1);