欢迎来到代码驿站!

Android代码

当前位置:首页 > 移动开发 > Android代码

Android利用Gson解析嵌套多层的Json的简单方法

时间:2021-01-28 10:25:13|栏目:Android代码|点击:

首先先讲一个比较简单点的例子(最简单的我就不讲啦,网上很多),帮助新手理解Gson的使用方法:

比如我们要解析一个下面这种的Json:

String json = {"a":"100",
"b":[{"b1":"b_value1","b2":"b_value2"},
{"b1":"b_value1","b2":"b_value2"}],
"c":{"c1":"c_value1","c2":"c_value2"}}

首先我们需要定义一个序列化的Bean,这里采用内部类的形式,看起来会比较清晰一些:

public class JsonBean {
      public String a;
      public List<B> b;
      public C c;

      public static class B {
   public String b1;
   public String b2;
     }
  
     public static class C {
   public String c1;
   public String c2;
     }
}

很多时候大家都是不知道这个Bean是该怎么定义,这里面需要注意几点:

1、内部嵌套的类必须是static的,要不然解析会出错;

2、类里面的属性名必须跟Json字段里面的Key是一模一样的;

3、内部嵌套的用[]括起来的部分是一个List,所以定义为 public List<B> b,而只用{}嵌套的就定义为 public C c,

具体的大家对照Json字符串看看就明白了,不明白的我们可以互相交流,本人也是开发新手!

 Gson gson = new Gson();
 java.lang.reflect.Type type = new TypeToken<JsonBean>() {}.getType();
 JsonBean jsonBean = gson.fromJson(json, type);

然后想拿数据就很简单啦,直接在jsonBean里面取就可以了!

如果需要解析的Json嵌套了很多层,同样可以可以定义一个嵌套很多层内部类的Bean,需要细心的对照Json字段来定义哦。

上一篇:android音乐播放器监听电话状态实现代码

栏    目:Android代码

下一篇:Android使用webView长按保存下载网络图片

本文标题:Android利用Gson解析嵌套多层的Json的简单方法

本文地址:http://www.codeinn.net/misctech/52770.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有