如何将JSONArray转换为带有Gson的List?

时间:2013-10-02 09:34:44

标签: java android json gson arrays

在我的Android项目中,我正在尝试将收到的JSONArray转换为List。在this SO answer的帮助下,我得到了更多。我现在有以下代码:

Gson gson = new Gson();
JSONArray jsonArray = NetworkUtilities.getData("mymodeldata");
Type listType = new TypeToken<List<MyModel>>(){}.getType();
List<MyModel> myModelList = gson.fromJson(jsonArray, listType);

不幸的是,它在最后一行抱怨Gson类型中的fromJson(String,Type)方法不适用于参数(JSONArray,Type)。我真的不知道如何解决这个问题。

有人知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:56)

如果你在那里看到答案,你可以注意到fromJson()方法中的第一个参数是String(json对象)。尝试使用JsonArray上的toString(),如下所示: -

List<MyModel> myModelList = gson.fromJson(jsonArray.toString(), listType);