Android:使用gson库自定义序列化json

时间:2014-10-08 12:57:31

标签: java android serialization gson

我是初学Android开发人员,帮助处理来自服务器的json响应的序列化

    {"resources": {"1": {"res-id": "11886", "duration": "00:30"},
                   "2": {"res-id": "13451", "duration": "00:30"},
                   "3": {"res-id": "13452", "duration": "00:30"},
                           .... end more items...}

(这是来自服务器的真实回复:() 在对象

   ArrayList <Resources> resources;

我遇到了一个问题,因为对象不是嵌套数组。 使用gson库。 谷歌翻译。

1 个答案:

答案 0 :(得分:1)

创建一个类:

public class ResourcesWrapper {
    @SerializedName("resources")
    private Map<String, Resources> mMapResources;

    public ArrayList<Resources> getList() {
        return new ArrayList<Resources>(mMapResources.values());
    }

    public static class Resources {
        @SerializedName("res-id")
        private String mResId;
        @SerializedName("duration")
        private String mDuration;
    }
}

然后致电GSON:

new Gson().fromJson("{your_json}", ResourcesWrapper.class).getList()