36

在我的 Android 项目中,我试图将接收到的 JSONArray 转换为列表。在这个 SO 答案的帮助下,我走得更远了。我现在有以下代码:

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)。我真的不知道如何解决这个问题。

有谁知道我该如何解决这个问题?

4

1 回答 1

66

如果您在那里看到答案,您会注意到该fromJson()方法中的第一个参数是一个String(json 对象)。尝试toString()像这样在 JsonArray 上使用:-

List<MyModel> myModelList = gson.fromJson(jsonArray.toString(), listType);
于 2013-10-02T09:42:25.663 回答