使用GSON解析JSON格式数据(Android Studio)

参考出处:

简书liusj_0525—使用GSON框架解析json数据 — android

陈小默— Android Studio配置与使用GSON框架解析json数据

在android studio中使用Gson来解析Json文件,主要分为四个步骤:

  1. 在Android Studio中添加GSON依赖 安装Gson插件
  1. 编写json文件
  1. 使用Gson插件生成Java Bean类
  1. 利用Java Bean解析数据

一、在Android Studio中添加GSON依赖 安装Gson插件

在project下app找到build.gradle文件

在dependencies闭包中添加

compile’com.google.code.gson:gson:2.8.0′

PS:Github/GSON 版本号可在API中找到GSON-API

《使用GSON解析JSON格式数据(Android Studio)》 添加依赖

打开Preference选项->找到plugins

《使用GSON解析JSON格式数据(Android Studio)》 添加插件

点击底部Browse repositories查找GsonFormat 点击安装并重启

二、编写Json文件

Json文件的具体格式可以去 JSON 教程学习
Json文件存放目录为:src -> main(与java和res同级别目录)下建立一个assets文件夹。
Assets目录创建方法:在目录main右键 -> new -> Folder -> Assets Fodler。
下面在这里简单写一个Bean.json文件,给大家参考:

这里有一点要叮嘱大家,因为是利用Json文件自动生成类,所以在Json中,除了值以外,其他参数就不要使用中文了。当然用中文也可以,但是在这一步弹出的Json文件模型中需要自己重新去改属性名,并且是改成英文的。为了方便大家看Json文件层次,我们这里写的example使用中文

{
  "长春市中学":
    [
      {
        "学校名称": "吉大附中",
        "ID": "sch_001",
        "学校部门":
            [
              {
                "部门名称": "财务部",
                "部门标号":"bm_001"
              },
              {
                "部门名称": "事业部",
                "部门标号":"bm_002"
              }
            ]
      },
      {
        "学校名称":"师大附中",
        "ID": "sch_002",
        "学校部门":
            [
              {
                "部门名称": "财务部",
                "部门标号":"bm_001"
              },
              {
                "部门名称": "人力资源部",
                "部门标号":"bm_003"
              }
            ]
      }
    ]
}

三、使用Gson插件生成Java Bean类

  1. 在你的project -> app -> main -> java 下创建一个bean包
  2. 包下创建一个名为JsonBean的类(名字由自己需求可以改动)
  3. 创建完毕,进入JsonBean,在类内点击右键,选择Generate.( Mac快捷键:CMD + N)
  4. 选择GsonFormat,再将刚才编写的Json文件信息粘贴到弹出框中,点击OK会自动创建Json文件模型
  5. 修改好你的模型后,点击OK,一个Bean类就被创建出来了

四、利用Java Bean解析数据

解析数据非常简单,两行代码搞定:
 InputStream inputStream = getApplicationContext().getAssets().open("Bean.json");

 jsonBean = new GsonBuilder().create().fromJson(new InputStreamReader(inputStream), JsonBean.class);

json文件就被封装成了一个叫jsonBean的类实例

在JsonBean中每个属性都会有set()和get()方法

    原文作者:kirsguo
    原文地址: https://www.jianshu.com/p/c5eaf237ed37
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞