如何在 Java 中使用 Gson 解析沒有重複鍵的 JSON?


Gson 是 Google 為 Java 建立的一個 JSON 庫。透過使用 Gson,我們可以生成 JSON 並且轉換 JSON 至 Java 物件。我們可以透過建立一個 GsonBuilder 例項並用 create() 方法來呼叫來建立一個 Gson 例項。我們可以透過 TypeToken 類來解析一個沒有重複鍵的 JSON。如果我們希望為 Map 建立一個型別文字,我們可以建立一個匿名內部類。如果我們嘗試插入重複鍵,它將在執行時生成錯誤,“主執行緒異常“com.google.gson.JsonSyntaxException: 重複鍵”。

語法

public class TypeToken<T> extends Object

示例

import java.lang.reflect.Type;
import java.util.Map;
import com.google.gson.*;
import com.google.gson.reflect.TypeToken;
public class JsonWithoutDuplicateKeysTest {
   public static void main(String args[]) throws Exception {
      String json = "{\"123\":\"abc\", \"124\":\"def\", \"125\":\"ghi\"}";
      Gson gson = new GsonBuilder().setPrettyPrinting().create();
      Type mapType = new TypeToken<Map<Integer, String>>() {}.getType();
      Map<String, String> map = gson.fromJson(json, mapType);
      System.out.println(map);
   }
}

輸出

{123=abc, 124=def, 125=ghi}

更新於:2020-07-06

1000+ 瀏覽次數

開啟你的 職業生涯

透過完成這門課程獲得認證

開始
廣告