Android 在Java中通过gson对象循环?

Android 在Java中通过gson对象循环?,android,json,eclipse,gson,Android,Json,Eclipse,Gson,我目前正在开发一个Android应用程序,该应用程序从一个名为CloudMine的网站获得JSON响应。他们的答复通常采用以下格式: { "success": { "key1": { "field": "value1" }, "key2": { "field1": "value1", "field2": "value2" } }, "errors": { "key3": { "code": 404, "message": "

我目前正在开发一个Android应用程序,该应用程序从一个名为CloudMine的网站获得JSON响应。他们的答复通常采用以下格式:

{
    "success": {
        "key1": { "field": "value1" },
        "key2": { "field1": "value1", "field2": "value2" }
    },
    "errors": {
        "key3": { "code": 404, "message": "Not Found" }
    }
}
我目前想循环“success”对象中的所有对象,以便访问每个对象中的不同字段。然而,我只学习了如何使用gson API中的JsonParser。我得到的最接近的方法是在success对象上使用names()方法,但是Eclipse对我大喊大叫,因为该方法对于这种类型是未定义的

我感谢所有人能给我的帮助


谢谢

下面是一个非常简单的代码,可以在“success”中迭代对象:

JSONObject json = new JSONObject(responseString);
JSONObject success = json.getJSONObject("success");
JSONObject one;
for(Iterator it=success.keys(); it.hasNext(); ) {
    one = success.getJSONObject((String)it.next());
    //deal with the next object inside your 'success'
}

下面是一个非常简单的代码,可以在“success”中迭代对象:

JSONObject json = new JSONObject(responseString);
JSONObject success = json.getJSONObject("success");
JSONObject one;
for(Iterator it=success.keys(); it.hasNext(); ) {
    one = success.getJSONObject((String)it.next());
    //deal with the next object inside your 'success'
}

下面是一个非常简单的代码,可以在“success”中迭代对象:

JSONObject json = new JSONObject(responseString);
JSONObject success = json.getJSONObject("success");
JSONObject one;
for(Iterator it=success.keys(); it.hasNext(); ) {
    one = success.getJSONObject((String)it.next());
    //deal with the next object inside your 'success'
}

下面是一个非常简单的代码,可以在“success”中迭代对象:

JSONObject json = new JSONObject(responseString);
JSONObject success = json.getJSONObject("success");
JSONObject one;
for(Iterator it=success.keys(); it.hasNext(); ) {
    one = success.getJSONObject((String)it.next());
    //deal with the next object inside your 'success'
}
这对我很有用:

JsonObject myJsonObject = new Gson().fromJson(myJsonString, JsonObject.class);

            for (Map.Entry<String, JsonElement> entry : myJsonObject.entrySet()) {

                JsonObject entryObj = entry.getValue().getAsJsonObject();
            }
JsonObject myJsonObject=new Gson().fromJson(myJsonString,JsonObject.class);
对于(Map.Entry:myJsonObject.entrySet()){
JsonObject entryObj=entry.getValue().getAsJsonObject();
}
基于这个问题的公认答案,尽管我已经根据我的用例修改了它:

这对我很有效:

JsonObject myJsonObject = new Gson().fromJson(myJsonString, JsonObject.class);

            for (Map.Entry<String, JsonElement> entry : myJsonObject.entrySet()) {

                JsonObject entryObj = entry.getValue().getAsJsonObject();
            }
JsonObject myJsonObject=new Gson().fromJson(myJsonString,JsonObject.class);
对于(Map.Entry:myJsonObject.entrySet()){
JsonObject entryObj=entry.getValue().getAsJsonObject();
}
基于这个问题的公认答案,尽管我已经根据我的用例修改了它:

这对我很有效:

JsonObject myJsonObject = new Gson().fromJson(myJsonString, JsonObject.class);

            for (Map.Entry<String, JsonElement> entry : myJsonObject.entrySet()) {

                JsonObject entryObj = entry.getValue().getAsJsonObject();
            }
JsonObject myJsonObject=new Gson().fromJson(myJsonString,JsonObject.class);
对于(Map.Entry:myJsonObject.entrySet()){
JsonObject entryObj=entry.getValue().getAsJsonObject();
}
基于这个问题的公认答案,尽管我已经根据我的用例修改了它:

这对我很有效:

JsonObject myJsonObject = new Gson().fromJson(myJsonString, JsonObject.class);

            for (Map.Entry<String, JsonElement> entry : myJsonObject.entrySet()) {

                JsonObject entryObj = entry.getValue().getAsJsonObject();
            }
JsonObject myJsonObject=new Gson().fromJson(myJsonString,JsonObject.class);
对于(Map.Entry:myJsonObject.entrySet()){
JsonObject entryObj=entry.getValue().getAsJsonObject();
}
基于这个问题的公认答案,尽管我已经根据我的用例修改了它:


你难道不喜欢没有评论的下议院选民吗?很确定这不是问题中提到的Gson。你难道不喜欢没有评论的下议院选民吗?很确定这不是问题中提到的Gson。你难道不喜欢没有评论的下议院选民吗?很确定这不是Gson,正如问题中所说。你难道不喜欢那些没有评论的下层选民吗?很肯定这不是问题中所说的格森。