【发布时间】:2019-09-20 06:56:20
【问题描述】:
我想使用 GSON 库从 Json 对象中提取一个数组。
我已经尝试创建类并让 Gson 库完成工作,但在这种特殊情况下它不起作用。
提取数据的类
public class Images {
private Image[] images;
public class Image {
private String url;
public Image(String url) {
this.url = url;
}
public String getUrl() {
return url;
}
}
public Images(Image[] images) {
this.images = images;
}
public Image[] getImages() {
return images;
}
}
示例数据
...
,
"images": [
{
"url": "https://a.allegroimg.com/original/030516/a867b9dd4021b15678fc03a3981b"
},
{
"url": "https://a.allegroimg.com/original/03da09/19740f7147ad929609cc2bcc499e"
},
{
"url": "https://a.allegroimg.com/original/03198b/c024c7e448cab876bb49ad055567"
},
{
"url": "https://a.allegroimg.com/original/039fee/64bae4c64dac89e5b5b4d001c2ca"
}
],
...
我收到错误消息:“com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 283 path $.items.promoted[0].images”
我正在寻求从 json 对象中提取数据的帮助。
编辑
我只需要删除类'Images'并将'urls'从Json保存到Image[]
【问题讨论】:
-
这是完整的json吗?或者你只是打破它并发布?在
Images上,您不需要带有setter 方法的arg 构造函数 -
只是一部分,其余的我都没问题,就这个