Gson解析JSON数组
(2023-06-08 20:17:54)
五种方法解析各种情况下的JSON数组
"muser":
[
{
"name": "zhangsan",
"age": "10",
"phone": "11111",
"email": "11111@11.com"
},
...
]
这里的 "muser"
,就是数组的名称,称它为数据头,防止跟里面的字段有歧义
如果没有数据头,那就叫它纯数据,或者纯数组数据
代码中用到的JsonArray/JsonObject等都来自GSON
没有数据头的纯数组JSON如何解析?
解析的JSON数组(JsonArray):
[
{
"name": "zhangsan",
"age": "10",
"phone": "11111",
"email": "11111@11.com"
},
{
"name": "lisi",
"age": "20",
"phone": "22222",
"email": "22222@22.com"
},
...
]
这种JSON数组格式,强大的GSON会直接解析成一个List。但是这里我们先用原始的方法去解析。
首先我们需要建立一个Bean对象,注意变量名和字段名称一致(不一致时,可以使用序列化):
public class
UserBean {
//变量名跟JSON数据的字段名需要一致
private String name ;
private String age;
private String phone;
private String email;
...
}
解析过程:
private void
parseNoHeaderJArray() {
//拿到本地JSON 并转成String
String strByJson = JsonToStringUtil.getStringByJson(this,
R.raw.juser_1);
//Json的解析类对象