gson秩序の解析jsonデータ

1337 ワード

まずgsonライブラリをプログラムに参照する
GsonのGitHubアドレス
直接使用することもできます
compile 'com.google.code.gson:gson:2.8.0'

今のところ最新のものは、すぐに更新してください...
よしもう言わないで本題に入りなさい
JsonObject object = (JsonObject) new JsonParser().parse(json);
JsonObject body = object.getAsJsonObject("Body");

これはjsonデータを直接秩序あるJsonObjectに変換して、前にfastjsonを試してみたが、無秩序な問題を解決することが見つからず(レベルが限られている)、gsonを使ってみたが、やはりgsonのほうが使いやすい.
ここまで差が少なく終わって、サーバーから戻ってきたjsonは固定されていないので、表示時にkeyもvalueも必要なので、bodyをLinkedHashMapに変換してリストに変換し、解析が秩序あることを保証します.
String bodyJson = body.toString();
List list = new ArrayList<>();
        Gson gson = new Gson();
        LinkedHashMap map = gson.fromJson(bodyJson, new TypeToken>() {
        }.getType());
        
        Iterator> it = map.entrySet().iterator();
        while (it.hasNext()) {
            Map.Entry entry = it.next();
            if (!"".equals(entry.getValue())) {
                Entity entity = new Entity();
                entity.mKey = entry.getKey();
                entity.mValue = entry.getValue();
                list.add(entity);
            }
        }