web-dev-qa-db-ja.com

JSONArrayをGsonでリストに変換する方法は?

Androidプロジェクトで、受信したJSONArrayをリストに変換しようとしています。 this SO answer I私は今、次のコードを持っています:

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)に適用できないという苦情があります。私はこれをどうやって解決するか本当にわかりません。

誰も私がこれを解決する方法を知っていますか?

31
kramer65

答えが表示されている場合、fromJson()メソッドの最初のパラメーターはString(jsonオブジェクト)であることがわかります。次のようにJsonArrayでtoString()を使用してみてください。

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