我第一次使用JSON,我的目标是使用此JSON结果(Google Distance Matrix API)创建一个具有Destination,Origin和Duration属性的对象
{
"destination_addresses" : [ "123 High St, Los Angeles, CA 90210, USA" ],
"origin_addresses" : [ "800 Lake Dr, Los Angeles, CA 90210, USA" ],
"rows" : [
{
"elements" : [
{
"distance" : {
"text" : "2.0 km",
"value" : 1969
},
"duration" : {
"text" : "6 mins",
"value" : 338
},
"status" : "OK"
}
]
}
],
"status" : "OK"
}
到目前为止,我已经能够使用此行正确存储目的地和原点
Property data = new Gson().fromJson(json, Property.class);
但我很难弄清楚如何从巢内获取值。具体来说,我试图从持续时间中获取“文本”
任何帮助都会得到极大的帮助!
答案 0 :(得分:0)
首先为周围数据创建一个容器。
class MainContent
{
public String destination_addresses;
public String bar;
public List<SubContent> subcontent;
}
然后为嵌套数据创建一个类:
class SubContent
{
public String text;
}
任一类中的字段必须与json对象具有相同的名称。
然后简单地说:
gson.fromJson(jsonData, MainContent.class);
GSON将尝试将json字符串中的值反映到对象中。