ホームページ  >  記事  >  Java  >  jsonでデータを取得する方法

jsonでデータを取得する方法

anonymity
anonymityオリジナル
2019-05-07 14:02:2919336ブラウズ

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 を作成するのが最善です。
ここでの結果は、ネットワーク リクエストによって返された json 文字列です。
JSONObject jsonObject = new JSONObject(result);
JSONArray jsonArray = jsonObject.getJSONArray(“data”);
for (int j = 0; j JSONObject jsonObject2 = jsonArray.getJSONObject(j);
String id = jsonObject2.getString(“id”);
String title = jsonObject2.getString(“title”);
String pic = jsonObject2. getString("pic");
Stringcollect_num = jsonObject2.getString("collect_num");
String food_str = jsonObject2.getString("food_str");
String num = jsonObject2.getString("num") );
Log.e(“json——->”, id ”,” title ”,” pic ”,”collect_num ”,” food_str ”,” num);

2 番目の解析方法: Gson 解析
Gson 解析では、gson.jar パッケージをダウンロードする必要があります。
ここでの分析では、json のエンティティ クラスを生成する必要があります。初心者の場合は、手動で記述することをお勧めします。慣れている場合は、Android Studio のプラグイン GsonFormat を使用して自動的に生成できます。 。
解析はたった 1 文です:
MenuBean menuBean = new Gson().fromJson(result, MenuBean.class);
Log.e(“MenuBean—–>”, menuBean.getRet() " ");

3 番目の解析方法: FastJson は Gson に似ています。
MenuBean menuBean = JSON.parseObject(result,MenuBean.class);
Log.e(“MenuBean—–>”, menuBean.getRet() ””);
Log.e (“MenuBean—–>”, menuBean.getData().get(0).getPic() ””);

4 番目の解析方法: 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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。