GSON 是 Google 開發的一款 Java 庫,可以將 Java 對象轉換成 JSON 格式的字符串,也能將 JSON 字符串轉換成 Java 對象。本文主要講解如何使用 GSON 提取 JSON 中的數據。
首先,我們需要下載 GSON 的 jar 包,然后將它引入我們的項目中。
// 引入 GSON 庫 dependencies { implementation 'com.google.code.gson:gson:2.8.7' }
接下來,我們來看一下一個 JSON 數據的例子:
{ "name": "GSON", "version": "2.8.7", "description": "A Java serialization/deserialization library to convert Java Objects into JSON and back", "homepage": "https://github.com/google/gson", "license": "Apache-2.0" }
如果我們需要提取出 name 的值,我們可以使用如下的代碼:
String jsonString = "{\"name\":\"GSON\",\"version\":\"2.8.7\",\"description\":\"A Java serialization/deserialization library to convert Java Objects into JSON and back\",\"homepage\":\"https://github.com/google/gson\",\"license\":\"Apache-2.0\"}"; Gson gson = new Gson(); JsonObject jsonObject = gson.fromJson(jsonString, JsonObject.class); String name = jsonObject.get("name").getAsString();
以上代碼中,我們首先將 JSON 字符串轉換成 JsonObject,然后使用 get() 方法獲取到其中的 name 屬性的值并轉換成字符串。
如果我們有一個 JSON 數組呢?我們可以使用如下的代碼提取其中的數據:
String jsonString = "[{\"name\":\"GSON\",\"version\":\"2.8.7\"},{\"name\":\"Jackson\",\"version\":\"2.11.3\"}]"; Gson gson = new Gson(); JsonArray jsonArray = gson.fromJson(jsonString, JsonArray.class); for (JsonElement jsonElement : jsonArray) { JsonObject jsonObject = jsonElement.getAsJsonObject(); String name = jsonObject.get("name").getAsString(); String version = jsonObject.get("version").getAsString(); System.out.println(name + " " + version); }
以上代碼中,我們首先將 JSON 數組轉換成 JsonArray,然后遍歷其中的所有元素,逐一提取出 name 和 version 的值。
以上就是使用 GSON 提取 JSON 數據的基本方法,希望能對大家有所幫助。