java - 使用 Gson get() 从 Json 获取值

标签 java json gson

给定以下 Json 数据:

 "values": [
{
  "type": "any",
  "value": "MO918038B",
  "key": "nino"
},
{
  "type": "any",
  "value": "1956-11-18",
  "key": "dob"
},
{
  "type": "any",
  "value": "q",
  "key": "memorableWord"
},
{
  "type": "any",
  "value": "E13468",
  "key": "pin"
},
]

以及以下 Java 类:

    public void doStuff() {

    try (Reader reader = new FileReader("global-vars.json")) {

        JsonObject json = new Gson().fromJson(reader, JsonObject.class);

        String reg = json.get("values").toString();

        System.out.println(reg);

    } catch (IOException e) {
        e.printStackTrace();
    }

}

搜索后,我不清楚如何最好地获取“nino”的“值”,即=“MO918038B”

最佳答案

Type listType = new TypeToken<List<YourObjectClass>>() {}.getType();
List<YourObjectClass> yourList = new Gson().fromJson(yourJson, listType);

关于java - 使用 Gson get() 从 Json 获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57693363/

相关文章:

java - 在通用上下文中使用 getActualTypeArguments

java - 从 IntelliJ IDEA 中的文件夹打开文件

java - 如何使用 Gson 处理具有相同属性名称的不同数据类型?

java - 使用gson在json中剪切太长的字符串

java - 在 Kotlin 中,GSON.fromJson(...) 如何设法改变现有对象的只读字段?

java - ProGuard 在具有 OpenCSV 依赖项的 Android 上构建失败

Java 多实例(如枚举)

node.js - 如何使用 Zod "deep"解析包含 JSON 字符串的架构?

java - JSONObject.put(String) 为每个 '\' 添加 '/'

javascript - 为什么我的fs错误在Node.js中返回空对象?