android中json数据分析及解析详解

本文详细介绍了Android中处理JSON数据的技巧,包括JSONObject和JSONArray的解析,以及如何使用GSON库。通过实例代码展示了如何从复杂的JSON数据中提取所需字段,并提供了一个查看JSON数据的工具推荐。
摘要由CSDN通过智能技术生成

1.写在前面

通过郭神的代码和说明加上这两天查看的资料,学到了很多以前没注意没总结的json知识。通过这篇文章可以了解到以下几点。
A. json数据形式,一般有三种
jsonObject:{key:value},只要是这种形式的json数据,一定要写成key-value。并且如果是这样的数据,不管多复杂,如下图(郭神的数据),如果使用JSONObect解析,第一步一定是将字符串数据变成JSONObject,如下
这里写图片描述

 JSONObject jsonObject = new JSONObject(获取到的string数据);

JSONArray:[],这里可以分为两种,[{},{},{}]和[“”,”“,111,true],不管哪一种这数组中一个要至少有一个数据,并且如果要使用JSONArray解析,不管多复杂的数据结构,见下图(郭神的数据),第一步都是使用下面这行代码,
这里写图片描述

 JSONArray jsonArray = new JSONArray(string类型的数据);

这是他们的共同点。不同点,是[{},{}]这种类型的JSONArray,{}对象里面一定是JSONObject,即一定要写成key-value形式。
B. 学习到了GSON解析和JSONObject或者JSONArray解析的区别,GSON解析如果要获取整个json数据中某一个字段的数据,(下面有例子),一般通过把bean写好,然后通过方法,直接可以获取字段外面的对象,然后通过对象通过get或者.属性获取数据。但是JSONObject或者JSONArray需要一层层剥洋葱样剥到某个字段的数值,并且要获取最外层对象,还要一层层从里面的对象塞数据,知道塞到我们想要的。
C. 对于一个json数据,我们想要什么字段的数据就在bean里面写好自己想要数据的字段,一定要写准确,如果担心字段的名字不符合我们java定义属性的名字,可以通过GSON库里面SerializedName解决,还是一样,一定要写匹配。如下图,整个json数据中,我只是想要获取,这两个字段的value也是可以的。(下面例子)
这里写图片描述

"lat":"28.197000","lon":"112.967000"

D. 发现一个查看json数据的好工具HiJson 2.1.2_jdk64.exe,可以通过它将复杂的json数据格式化。当然此类的工具很多,在线的也很多,如果,见图。
这里写图片描述

2. 代码

A. 首先上面我说了很多非常确定的言语,现在验证下。

比较这两个,明显可以知道上面这个不是json数据,放到工具验证,见图
{
  "a":"bbb","b":2,"c":true,"d"}
{
  "a":"bbb","b":2,"c":true,"d":22.22}

这里写图片描述
这里写图片描述
还有这种

["a",true,22.2
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值