博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
GSON解析JSON
阅读量:5126 次
发布时间:2019-06-13

本文共 1699 字,大约阅读时间需要 5 分钟。

谷歌提供的GSON开源库可以让解析JSON数据的工作简单到不敢想象的地步。要使用GSON必须要在项目中添加一个 GSON的jar包。首先需要将GSON的资源压缩包下载下来,下载

地址是:

GSON的强大之处,在于可以将一段json格式的字符串自动映射成一个对象,从而不需要我们再动手去编写代码进行解析了。比如说一段json格式的数据如下所示:

 {"name":"tom","age":"20"}

那么我们就可以定义一个Person类,并加入name和age这两个字段,然后只需简单地调用如下代码就可以将json数据自动解析成一个Person对象了:

   Gson gson=new Gson();
   Person person=gson.fromJson(jsonData,Person.class);

如果需要解析的是一段json数组会稍微麻烦点,我们需要借助TypeToken将期望解析的数据类型传入到fromJson()方法,如下所示:

   List<Person> people=gson.fromJson(jsonData,new TypeToken<List<Person>>(){}.getType());

好了,基本的用法就是这样了,下面我们来试试,首先新增一个App类,并加入id,name和version这三个字段,如下所示: 

package com.jack.networktest;    public class App {        private String id;      private String name;      private String version;      public String getId() {          return id;      }      public void setId(String id) {          this.id = id;      }      public String getName() {          return name;      }      public void setName(String name) {          this.name = name;      }      public String getVersion() {          return version;      }      public void setVersion(String version) {          this.version = version;      }              }

解析代码:

//使用JSONWithGSON(String jsonData)方法解析json格式的数据      private void parseJSONWithGSON(String jsonData){          Gson gson=new Gson();          List
appList=gson.fromJson(jsonData, new TypeToken
>() {}.getType()); for(App app: appList){ Log.d("MainActivity", "id is "+app.getId()); Log.d("MainActivity", "name is "+app.getName()); Log.d("MainActivity", "version is "+app.getVersion()); } }

 

转载于:https://www.cnblogs.com/zzw1994/p/5091092.html

你可能感兴趣的文章
2019/8/25日之债
查看>>
9/15的债
查看>>
centos7 安装docker
查看>>
vibox安装
查看>>
知识点
查看>>
jquery-validate
查看>>
敏捷开发
查看>>
sql-分组函数
查看>>
java笔试题
查看>>
mysql 行转列
查看>>
web路径
查看>>
sql
查看>>
mysql 字符串截取
查看>>
sql if else
查看>>
数据库的忘记root密码和导出数据库
查看>>
销售订单计算交期
查看>>
金蝶CLOUD消息队列服务
查看>>
WMS出库单重复
查看>>
自定义字段从BOM带入生产用料清单
查看>>
生产用料清单-在制材料数量
查看>>