Android开源库基础——Gson

本文介绍了Gson库的基本概念,如何在Android中添加依赖并解析JSON数据。通过实例演示如何将raw资源文件中的JSON转换为Person对象列表。适合初学者理解JSON处理在Android开发中的作用。
摘要由CSDN通过智能技术生成

Gson是什么?

Gson是谷歌提供用于解析JSON数据的开源库

推荐前提阅读:Android基础——XML和JSON解析

Gson使用

添加依赖

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

在res下的raw文件夹新建data.json:

[
  {
    "id": "1",
    "name": "tom"
  },
  {
    "id": "2",
    "name": "john"
  }
]

新建类Person:

public class Person {
    private String id;
    private String name;

    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;
    }
}

修改Activity:

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        parseJSONWithGSON();
    }

    private void parseJSONWithGSON() {
        try {
            BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(getResources().openRawResource(R.raw.data)));
            StringBuilder result = new StringBuilder();
            String line;
            while ((line = bufferedReader.readLine()) != null) {
                result.append(line);
            }

            Gson gson = new Gson();
            List<Person> personList = gson.fromJson(result.toString(), new TypeToken<List<Person>>() {
            }.getType());
            for (Person person : personList) {
                Log.d("MainActivity", person.getId() + " " + person.getName());
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值