java - 如何解析具有不同键值的json对象?

标签 java json android-volley

我们正在尝试解析一个每次都具有不同键值的 json 对象。

{
  "Key1": "Val1",
  "Key2": "Val2",
  "Key3": "Val3",
  "Key4": "Val4",
  "Key5": "Val5",
  .........,
  .........,
  "KeyN": "ValN"
}

这里"KeyN"可以有不同的名字,"ValueN"也会不同。

很明显,这不会一次性解析,例如:

ObjectX objetX = new Gson().fromJson(sourceJson, ObjectX.class);

我们应该如何解析这个?即使我们选择手动解析?我们在 android Volley 响应中尝试这个。

最佳答案

使用 Gson java 库将您的 json 对象解析为 HashMap<String,String> .

sample code

     sourceJson = {
  "Key1": "Val1",
  "Key2": "Val2",
  "Key3": "Val3",
  "Key4": "Val4",
  "Key5": "Val5",
  .........,
  .........,
  "KeyN": "ValN"
};

        Type type = new TypeToken<Map<String, String>>(){}.getType();
        Map<String, String> myMap = gson.fromJson(sourceJson, type);

如果你想要更通用的解决方案应该是

Map map = gson.fromJson(sourceJson, Map.class);

关于java - 如何解析具有不同键值的json对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42219586/

相关文章:

java - 如何在 Mockito 中 stub 一个直到运行时才知道名称的方法?

java - 为什么我的 "posts"在 android recyclerview 中以不同的大小加载?

android - 使用 Google Volley 上传图片

java - 使用 hibernate 更新 fk

java - JDB——如何在运行程序之前获取方法列表?

javascript - 从 JSON 对象中删除空格,但不在引号内

java - 无法读取我发送到 Android 应用程序的 JSON 响应

android - 如何在android上上传大文件?

具有事件处理功能的 Java Swing

javascript - JS数据操作