繁体   English   中英

使用GSON从此Json字符串中提取对象

[英]Extract objects from this Json string with GSON

我需要为此json字符串获取Works数组:

  [
        {
            "worktypes": [
                {
                    "works": [
                        {
                            "price": "22,22",
                            "code": "A00011",
                            "name": "name 2"
                        },
                        {
                            "price": "22,22",
                            "code": "A00011",
                            "name": "name 3"
                        },
                        {
                            "price": "22,22",
                            "code": "A00011",
                            "name": "name 4"
                        },
                        {
                            "price": "11",
                            "name": "aa",
                            "code": "aa"
                        },
                        {
                            "price": "12,22",
                            "name": "Nombre",
                            "code": "A00112"
                        },
                        {
                            "price": "22",
                            "name": "asdads",
                            "code": "asdasd"
                        },
                        {
                            "price": "11",
                            "name": "yy",
                            "code": "yy"
                        }
                    ],
                    "name": "Pompas"
                }
            ]
        }
    ]

我尝试这样:

List<Work> works = gson.fromJson(value.toString(), new TypeToken<List<Work>>() {}.getType());

但是不要让任何人..怎么了?

PD:Work是具有价格,代码和名称值的类。

还有另一个类WorkTypes.class,并有一个WorkObject ArrayList的实例。

public class WorkTypes  {

    //worktypes here should match json...character to character!
    private ArrayList<Work> worktypes;

    public ArrayList<Work> getEntities() {
        return worktypes;
    }

    public void setEntities(ArrayList<Work> worktypes) {
        this.worktypes = worktypes;
    }
}

然后对于GSON,执行以下操作:

    WorkTypes objs = null;
    objs = gson.fromJson(jsonDataString, WorkTypes.class);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM