くらげになりたい。

くらげのようにふわふわ生きたい日曜プログラマなブログ。趣味の備忘録です。

AndroidでJSON形式の文字列をプリティプリント(整形)する

Android内でAPIから受け取った値の確認のために、JSONの中身を書くにしたいときがあったので、
PP(Pretty Print)したいなぁと思ったときの備忘録。

GsonとかJacksonとか、JSONを扱うライブラリはあるけれど、プリティプリントしたいだけなので、あまりいれたくないなぁとおもったら、
Andoridの標準ライブラリにJSONObjectと言うものがあるよう。整形だけならこれで十分!

JSONObject | Android Developers

使い方はこんな感じ

import org.json.JSONObject;
...

try {
  String jsonStr = "/* JSON形式の文字列 */"l

  // JSONObjectに変換して、
  JSONObject jsonObj = new JSONObject(jsonStr);

  // インデントのサイズを設定して、toString()すれば整形されて表示
  int indentSpaces = 2;
  Log.d("JSON", jsonObj.toString(indentSpaces));
} catch(JSONException e) {
  // jsonStrがJSON形式でないと、例外が発生
}

以上!!

参考にしたサイト様