首頁 >Java >java教程 >怎麼取得json中的數據

怎麼取得json中的數據

anonymity
anonymity原創
2019-05-07 14:02:2919385瀏覽

JSON是首先一種資料結構,說白了就是對資料的描述,剛剛出現是為了取代XML,可惜並沒有,但是在作為設定檔上,卻是很好,由於它小巧靈活,描述資料很好,所以在網路上進行資料傳輸更方便。
請記住JSON對資料的描述形式,既然是形式,那麼它的資料形式是什麼樣的: 
物件的描述是: {} 這個表示jsonobject(json物件) 
陣列的描述是: [] 表示jsonarray(json陣列) 
屬性或值的描述是: “” 
連接之間的描述是: :

怎麼取得json中的數據










#範例
格式是這樣的:

{ 
“ret”: 1, 
“data”: [ 
{ 
“id”: “8289”, 
“title”: “油焖大虾”, 
“collect_num”: “1596”, 
“food_str”: “大虾 葱 生姜 植物油 料酒”, 
“num”: 1596 
},

第一種方法:原生解析

首先要分析json的格式,這裡首先是一個json物件(即JsonObject),裡面還嵌套有一個json陣列(即JsonArray),jsonarray裡面又是一個json物件。分析清楚那就可以進行解析了,當然最好的話,還是要建立一個json所對應的實體類別bean,。 
這裡的result就是網路請求回傳的json字串。
JSONObject jsonObject = new JSONObject(result); 
JSONArray jsonArray = jsonObject.getJSONArray(“data”); 
for (int j = 0; j c81ac74998d61bbb725974e5f09466b6”, id ”,” title ”,” pic ”,” collect_num ”,” food_str ”,” num);

#第二種解析方式:Gson解析 
Gson解析需要下載gson.jar套件。 
這裡解析就需要為json產生實體類,初學的話建議手寫,熟悉的話可以使用Android Studio裡面插件GsonFormat來自動產生。
解析就是一句話的事: 
MenuBean menuBean = new Gson().fromJson(result, MenuBean.class); 

Log.e(“MenuBean—–>”, menuBean.getRet() 」「); #########第三種解析方式:FastJson和Gson類似的。 ######MenuBean menuBean = JSON.parseObject(result,MenuBean.class); ###Log.e(“MenuBean—–>”, menuBean.getRet() ”“); ###Log.e (“MenuBean—–>”, menuBean.getData().get(0).getPic() ”“);#########第四種解析方式:JackJson解析,同樣和上面類似 # #####MenuBean menuBean; ###menuBean = new ObjectMapper().readValue(result, MenuBean.class); ###Log.e(“MenuBean—–>”, menuBean.getRet() ”“) ; ###Log.e(“MenuBean—–>”, menuBean.getData().get(0).getPic() ”“);###

以上是怎麼取得json中的數據的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn