Gson解析包含多种类型数据的数组

Q214HW 2015-07-14 01:30:25
{
"res_code":"E_0000",
"update_date":1436836200,
"created":[{"create_date":1436771777,
"moment_id":"2c9092a84dd0f0dc014e86457d3e011d",
"type":5,
"cared":false,"
inner_type":0,
"illness":"yuu",
"symptom":"jjj",
"start_timestamp":0,
"end_timestamp":0},

{ "create_date":1436767175
"moment_id":2c9092a84dd0f0dc014e85ff4172011b
"type":3,
"cared":false,"
inner_type":0,
"vaccine":"脊灰疫苗",
"adverse_reaction":"局部红肿疼痛",
"text": "shsuh"}]
}
请问这样的数据怎样用Gson解析?
...全文
451 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
Q214HW 2015-07-14
  • 打赏
  • 举报
回复
嗯,再看看吧,还是谢谢了
JPF1024 2015-07-14
  • 打赏
  • 举报
回复
引用 9 楼 Q214HW 的回复:
[quote=引用 8 楼 dcxy0 的回复:] [quote=引用 7 楼 Q214HW 的回复:] [quote=引用 5 楼 dcxy0 的回复:] 组成一个类,然后用Gson去解析这个类就可以.



class  1:
public class Entity{

private String res_code;
private String update_date;
private Create[] created;
//set ,get
}


class 2:
   private String create_date;
   private String moment_id;
   private String type;
   private String cared;
   private String inner_type;
   private String illness;
   private String symptom;
   private String start_timestamp;
   private String end_timestamp;
//set ,get

然后参照这个: http://www.jb51.net/article/32547.htm 下面的那种方法去解析就可以了。
你这个跟我想的一样, 这样数组中的数据就全部一样了,数据很大,我这边数组中有7种类型,这样等于是将所有类型合并在一个类中[/quote] 那你只能这样,在数组的那个对象里面,新建一个getEntity(JsonObject json),这样你就可以只保存一个。 另外,你不是就有两个数据吗?而且两个数据不一样的。这是分拆到两个类的(json数组里面是一个类,外面的是一个类),不是一个类。[/quote]我这里想用Gson解析,因为数组里包含的数据很多,我这里因为方便点才只拿出两种类型数据,我已经写过Json解析的了,但是很复杂,这里想要优化一下[/quote] 说实话,我觉得难度很大,毕竟你有那么多东西,优化空间不大
Q214HW 2015-07-14
  • 打赏
  • 举报
回复
引用 8 楼 dcxy0 的回复:
[quote=引用 7 楼 Q214HW 的回复:] [quote=引用 5 楼 dcxy0 的回复:] 组成一个类,然后用Gson去解析这个类就可以.



class  1:
public class Entity{

private String res_code;
private String update_date;
private Create[] created;
//set ,get
}


class 2:
   private String create_date;
   private String moment_id;
   private String type;
   private String cared;
   private String inner_type;
   private String illness;
   private String symptom;
   private String start_timestamp;
   private String end_timestamp;
//set ,get

然后参照这个: http://www.jb51.net/article/32547.htm 下面的那种方法去解析就可以了。
你这个跟我想的一样, 这样数组中的数据就全部一样了,数据很大,我这边数组中有7种类型,这样等于是将所有类型合并在一个类中[/quote] 那你只能这样,在数组的那个对象里面,新建一个getEntity(JsonObject json),这样你就可以只保存一个。 另外,你不是就有两个数据吗?而且两个数据不一样的。这是分拆到两个类的(json数组里面是一个类,外面的是一个类),不是一个类。[/quote]我这里想用Gson解析,因为数组里包含的数据很多,我这里因为方便点才只拿出两种类型数据,我已经写过Json解析的了,但是很复杂,这里想要优化一下
JPF1024 2015-07-14
  • 打赏
  • 举报
回复
引用 7 楼 Q214HW 的回复:
[quote=引用 5 楼 dcxy0 的回复:] 组成一个类,然后用Gson去解析这个类就可以.



class  1:
public class Entity{

private String res_code;
private String update_date;
private Create[] created;
//set ,get
}


class 2:
   private String create_date;
   private String moment_id;
   private String type;
   private String cared;
   private String inner_type;
   private String illness;
   private String symptom;
   private String start_timestamp;
   private String end_timestamp;
//set ,get

然后参照这个: http://www.jb51.net/article/32547.htm 下面的那种方法去解析就可以了。
你这个跟我想的一样, 这样数组中的数据就全部一样了,数据很大,我这边数组中有7种类型,这样等于是将所有类型合并在一个类中[/quote] 那你只能这样,在数组的那个对象里面,新建一个getEntity(JsonObject json),这样你就可以只保存一个。 另外,你不是就有两个数据吗?而且两个数据不一样的。这是分拆到两个类的(json数组里面是一个类,外面的是一个类),不是一个类。
Q214HW 2015-07-14
  • 打赏
  • 举报
回复
引用 5 楼 dcxy0 的回复:
组成一个类,然后用Gson去解析这个类就可以.



class  1:
public class Entity{

private String res_code;
private String update_date;
private Create[] created;
//set ,get
}


class 2:
   private String create_date;
   private String moment_id;
   private String type;
   private String cared;
   private String inner_type;
   private String illness;
   private String symptom;
   private String start_timestamp;
   private String end_timestamp;
//set ,get

然后参照这个: http://www.jb51.net/article/32547.htm 下面的那种方法去解析就可以了。
你这个跟我想的一样, 这样数组中的数据就全部一样了,数据很大,我这边数组中有7种类型,这样等于是将所有类型合并在一个类中
JPF1024 2015-07-14
  • 打赏
  • 举报
回复
组成一个类,然后用Gson去解析这个类就可以.



class  1:
public class Entity{

private String res_code;
private String update_date;
private Create[] created;
//set ,get
}


class 2:
   private String create_date;
   private String moment_id;
   private String type;
   private String cared;
   private String inner_type;
   private String illness;
   private String symptom;
   private String start_timestamp;
   private String end_timestamp;
//set ,get

然后参照这个: http://www.jb51.net/article/32547.htm 下面的那种方法去解析就可以了。
Q214HW 2015-07-14
  • 打赏
  • 举报
回复
引用 4 楼 qin7wy5lp 的回复:
无知了,之前没听过Gson,刚去百度了一下,发现是一个组件库,如果是组件库不是更好解决了?应该有demo的吧?
嗯,但是现在数据比较复杂,数组中包含不同类型,没有这样的demo,现在一个思路就是将全部类型定义同一个类中,但数据太多了,看有没有做过类似的有没其他简单的做法
桃子先生 2015-07-14
  • 打赏
  • 举报
回复
无知了,之前没听过Gson,刚去百度了一下,发现是一个组件库,如果是组件库不是更好解决了?应该有demo的吧?
桃子先生 2015-07-14
  • 打赏
  • 举报
回复
嗖噶,那可能是我理解错了。
桃子先生 2015-07-14
  • 打赏
  • 举报
回复
json不是gson…… jsonobject和jsonarray的用法,百度一下就行
Q214HW 2015-07-14
  • 打赏
  • 举报
回复
我是要用Gson解析,用Json的早写好了

80,471

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧