最近看了一个大佬的复杂Json解析感觉超有收获


ios json复杂数据解析 复杂json数组解析_json

 

 

 我的目的是把text所对应的值解析出来

我试了各种办法

第一种:

    根据这个json格式来写几个类对应json同意层级的值

ios json复杂数据解析 复杂json数组解析_json_02

 

 

ios json复杂数据解析 复杂json数组解析_ios json复杂数据解析_03

 

 

ios json复杂数据解析 复杂json数组解析_字符串_04

 

ios json复杂数据解析 复杂json数组解析_JSON_05

 

 

编译以后可以正确获取text所对应的信息

ios json复杂数据解析 复杂json数组解析_JSON_06

 

 

 

 

第二种:

 

直接使用大佬的思路:(我是真的蠢,大佬牛皮)

* JSON实际上也是键值对("key":"value")
     * key 必须是字符串,value 可以是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 null)
     * value如果是字符串,用jsonobj.getString("key")获取
     * value如果是数  字,用jsonobj.getIntValue("key"),jsonobj.getFloatValue("key"),jsonobj.getInteger("key")等基本数据类型及其包装类的方法获取
     * value如果是布尔值,用jsonobj.getBoolean("key"),jsonobj.getBooleanValue("key")获取
     * value如果是数  组,用jsonobj.getJSONArray("key")获取
     * value如果是Object对象,用jsonobj.get("key"),获取
     * value如果是JSONObject对象,用jsonobj.getJSONObject("key")获取

     * 该方法用于将已有的json字符串转换为json对象,并取出该对象中相应的key对应的value值
     * 将已有的字符串转换成jsonobject,用JSON.parseObject(jsonStr)方法
     * json中只要是{}就代表一个JSONObject,[]就代表一个JSONArray
     * 获取JSONObject对象用JSONObject jsonobject.getJSONObject("key")方法
     * 获取JSONArray对象用JSONObject jsonobject.getJSONArray("key")方法
    

我没省步骤按装大佬思路一步一步走:

ios json复杂数据解析 复杂json数组解析_字符串_07

 

 

ios json复杂数据解析 复杂json数组解析_json_08