Android –Gson解析json数据

  • Post author:
  • Post category:其他




Android –Gson解析json数据

private void analyseJson() throws Exception {

    InputStream is=getAssets().open("dataTest.json");

    ByteArrayOutputStream baos=new ByteArrayOutputStream();
    byte[] bytes=new byte[1024];
    int len;
    while ((len=is.read(bytes))!=-1){
        baos.write(bytes,0,len);
    }

    String jsonData = baos.toString();
    Log.d(TAG,"jsonData--->"+jsonData);

    Gson gson=new Gson();

    List<Person> personList=gson.fromJson(jsonData,new TypeToken<List<Person>>()
    {}.getType());
    for(Person person:personList){
        Log.d(TAG,person.getId()+"  "+person.getName()+"  "+person.getClasss());
    }



}

1.读本地json文件。在main目录下创建asserts文件夹,将json文件放进去

在这里插入图片描述

 InputStream is=getAssets().open("dataTest.json");

该句即可读取成流,再转为baos

2.创建对应json解析数据得Bean类用于接收数据,分条展示。

3.运行结果
在这里插入图片描述

注:

1.从网络得到的json数据同样操作,不同点在于读取的is流的方式。is得到后都是如此操作。关键数据拿出来展示到recyclerView等空间上都是可以的。

2.Gson是google开源的,需手动添加依赖

implementation 'com.google.code.gson:gson:2.6.2'

在这里插入图片描述



版权声明:本文为xiaoyungou原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。