java吧 关注:1,190,482贴子:12,601,957
  • 11回复贴,共1
求助

小白求助感谢

只看楼主收藏回复

我想从一个json字符串获取值,例如这个里面的data,data里面的appdata,最终获取appdata里的id。
{
"code" : 0,
"data" : {
"appdata" : "{\"id\":\"8689995\",\"sId\":\"8197\"}",
"errorMsg" : ""
},


IP属地:河南来自iPhone客户端1楼2024-01-30 09:58回复
    我只会获取第一步。get("data")


    IP属地:河南来自iPhone客户端2楼2024-01-30 09:59
    回复
      继续get呀,一层层的拿 get(data).get(appdata).get(id)


      IP属地:广东来自Android客户端3楼2024-01-30 10:09
      收起回复
        那在返回之前,就给处理好你需要的数据,然后返回


        IP属地:广东来自iPhone客户端4楼2024-01-30 10:56
        回复
          是不是里面没对象,你get(data)看看返回来是啥类型,有什么数据


          IP属地:北京来自Android客户端6楼2024-01-30 11:04
          收起回复


            IP属地:北京来自Android客户端7楼2024-01-30 11:40
            回复
              data应该也是一个JSON对象,不行强转一下试试


              IP属地:河南来自iPhone客户端8楼2024-01-30 11:50
              回复
                // 首先注入JSON库(不使用类库是没法调的第一步是先转化成json类) 调用parseObject 将json转化为对象
                JSONObject jsonObject = JSON.parseObject(responseEntity.getBody() //这个参数是请求返回的响应体 也就是返回的json 把自己的json数据放到这里面 );
                // 然后用JSONArray 类 去一层一一层的调 调到的结果会存到jsonArray
                JSONArray jsonArray = jsonObject.getJSONObject("data").getJSONArray("data"); //这里可以一直get 你慢慢一层一层的试试 总能get到
                你这个数据结构还算简单 我有一个业务整个json 的 data参数 外面又包了一层String
                你这个应该这样
                JSONArray jsonArray = jsonObject.getJSONObject("data").getJSONArray("data").getJSONObject("appdata").getString("id"); 应该是这样就能取到id 你需要分清楚 取到什么地方是结构 什么地方是对象 正确操作结构才能正确取到参数 我看这里还算热乎 回复一下 今天最后一天班就放假了 没啥事 哈哈


                IP属地:河南9楼2024-01-31 14:41
                收起回复