如何解析与GSON嵌套的JSON [英] How to parse nested JSON with GSON

查看:224
本文介绍了如何解析与GSON嵌套的JSON的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

可以说我有一个像JSON:

  {
    分配:
        {
            'ID':'111',
            '活动':[
                {
                    '活动':'活动1',
                },
                {
                    '活动':'活动2'
                }
            ]
        },
        {
            'ID':'2222',
            活动:
                {
                    '活动':'活动1'                }
            ]
        }
    ]
}

和我使用GSON解析它。我有一个正确设置了JavaBean和可没有问题访问ID。我如何获得每个ID /对象活动?

编辑:更多code:

 公共类转让{私人字符串ID;公共字符串的getId(){
    返回ID;
}
}


  GSON mGson =新GSON();
assignmentList = mGson.fromJson(JSON,AssignmentList.class);
assignmentList.getAssignments()得到(0).getId());


解决方案

我想创建另一个bean的活动,因为它是一个JSON对象本身。

 类转让{    私人字符串ID;
    私人列表<活性GT;活动; // getter和setter这一点。    公共字符串的getId(){
        返回ID;
    }}班级活动 {
    私人字符串的活动; // getter和setter方法
}
GSON mGson =新GSON();
assignmentList = mGson.fromJson(JSON,AssignmentList.class);
assignmentList.getAssignments()得到(0).getActivities.get(1)。

Lets say i have a JSON like:

{
    "assignments": [
        {
            'id': '111',
            'activities': [
                {
                    'activity': 'Activity 1',
                },
                {
                    'activity': 'Activity 2'
                }
            ]
        },
        {
            'id': '2222',
            'Activities': [
                {
                    'activity': 'Activity 1'

                }
            ]
        }
    ]
}

And I'm using GSON to parse it. I have a correctly set up Javabean and can access id without problems. How do i get the activities per id / object?

EDIT: more code:

public class Assignment {

private String id;

public String getId() {
    return id;
}
}


Gson mGson= new Gson();
assignmentList=mGson.fromJson(json, AssignmentList.class);
assignmentList.getAssignments().get(0).getId());

解决方案

I'd create another Bean for Activities since it is a JSON object in itself.

class Assignment {

    private String id;
    private List<Activity> activities; //getters and setters for this.

    public String getId() {
        return id;
    }

}

class Activity {
    private String activity; //Getters and setters
}


Gson mGson= new Gson();
assignmentList=mGson.fromJson(json, AssignmentList.class);
assignmentList.getAssignments().get(0).getActivities.get(1);

这篇关于如何解析与GSON嵌套的JSON的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆