【发布时间】:2015-06-11 18:53:39
【问题描述】:
我需要一个对象列表,但在获取它时遇到了问题。我很新,所以有人可以帮助我吗?
我正在使用 volley 来获取 jsonObject,然后我需要对其进行转换(我看到最好的 wa 是使用 gson)。您可以在下面看到我的 json 示例的外观。
{
network: {
company: "JCDecaux",
href: "/v2/networks/dublinbikes",
id: "dublinbikes",
location: {
city: "Dublin",
country: "IE",
latitude: 53.3498053,
longitude: -6.2603097
},
name: "dublinbikes",
stations: [
{
empty_slots: 37,
extra: {
address: "Fitzwilliam Square East",
bonus: false,
connected: "1",
last_update: "1434047944",
open: true,
slots: 40,
ticket: true,
uid: 89
},
free_bikes: 3,
id: "153ff4dfb7bd8912ef91c10849129c2e",
latitude: 53.335211,
longitude: -6.2509,
name: "Fitzwilliam Square East",
timestamp: "2015-06-11T18:41:31.11Z"
},
{
empty_slots: 0,
extra: {
address: "Portobello Harbour",
bonus: false,
connected: "1",
last_update: "1434047764",
open: true,
slots: 30,
ticket: false,
uid: 34
},
free_bikes: 30,
id: "3c0cfd547a142bb651280991a412bcbe",
latitude: 53.330362,
longitude: -6.265163,
name: "Portobello Harbour",
timestamp: "2015-06-11T18:41:31.15Z"
},
...等
站类
public class Station {
public Station(){}
public String StationName;
public String Distance;
public String Slots;
public String Bikes;
public String LastUpdate;
//Getters and Setters ...
}
您可以在下面看到我到目前为止所做的事情..
//stations
JSONObject jsonNetwork = new JSONObject(response.getString("network"));
Type listType = new TypeToken<ArrayList<Station>>() {
}.getType();
List<Station> yourClassList = new Gson().fromJson(jsonNetwork, listType);
但我不知道如何解析所有这些并避免我不需要的数据以及函数 Gson().fromJson 需要和 JsonArray 而我拥有的是 JsonObject
感谢您的宝贵时间!
【问题讨论】:
-
我认为我使用 gson 完全错了,我不知道如何解析它。
-
您需要为对象创建类,以便将主对象本身解析为一个类。
-
嗯,没有办法避免我不需要的数据? @EpicPandaForce
标签: android gson android-volley