GSONでJSONをパースする

gsonを使うと、jsonを簡単にパースできる。というのを聞いたので使ってみました。

コツというか簡単な使い方の説明をします。

まずクラスを用意したりもしますが、

エラーのかどうかの判定は自分で判別をします。(ここはJsonObject jo = new JsonObject(str)で自分でstatusとかそういうのを取得して判別します。)

で、例えば、

result:{id:1,name:hello}

みたいに入れ子構造になっている場合には、面倒なので、resultの中のみを取り出します・

resultJsonObjectみたいなものをがあった場合

クラスで帰ってくる値と同じものを用意します。

ResultData.java

みたいのを作って、

public int id;
public String name;

を用意します。

で、

Gson gson = new Gson();
ResultData resultData = gson.fromJson(resultJsonObject.toString(), ResultData.class);

をすると該当のクラスの変数内に、対応する値がそのまま入ってくれます。

 

で、更に入れ子になる場合には、JsonObjectはそれ用のクラスを作って(innerData)として、配列の場合には、ArrayListを配置しておくと、jsonのキーと同じ名前の変数に該当のものが含まれます。

 

難点としては、値が存在しなくても、エラーも出ないので、サーバーの方の返り値がおかしくなっても気づけない事かと思います。

  • written on 2015.07.31
  • category : java

前後の記事

前の記事:

次の記事:

関連の記事

コメントの投稿

  • サイト内検索

新作アプリの紹介

関連サイトの紹介

アンドロイドアプリ開発TIPS
きぐるみカメラ
ふらいぱん
アンドロイドのデザイン集
Page top↑