java - 如何在 Android 中解析复杂的 json 响应

标签 java android json

我正在尝试解析 JSON 响应。我收到如下 JSON 响应:

"libraryLastModified" : "2012-10-10 03:57:26",
"playlists" : { "10063" : { "id" : "10063",
       "name" : "Favorites",
       "songs" : [ "10006134",
           "10006053",
           "10006274",
           "10006167",
        ]
    },
    "10157" : { "id" : "10157",
        "name" : "80s",
        "songs" : [ "10006694",
            "10006695",
            "10006697",
            "10006699",
            "10006698",
        ]
    }

如何访问 ID 和名称值?

最佳答案

GSON 。在这种情况下,您将创建两个类。

public class PLayList {
 private int id;
 private String name;
 private List<Integer> songs;
 //getters and setters
}

public class Library {
 private Date libraryLastModified;
 private List<Playlist> playlists;
 //getters and setters
}

然后你就可以写了

 Gson gson = new Gson();
 Library result = gson.fromJson(theInput, Library.class);

由于播放列表以键:值的形式提供给您,因此您需要为它们编写一个自定义反序列化器。泰姬一看GSON deserializing key-value to custom object如何做到这一点

关于java - 如何在 Android 中解析复杂的 json 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12838515/

相关文章:

java - 在 Redhat MRG/Apache QPID 中创建仅浏览队列

java - 正则表达式通配符匹配

java - 使用键复合键进行高效的 HashMap 检索(由 2 个枚举构建)

java - 引用未知实体 : java. lang.Integer

java - 从其他方法调用变量

android - 为什么我新签名的 apk 中的指纹不同?

javascript - 将数组的第一项连接到第二个数组 JavaScript 的第一项

android - AOSP stub 与 getSystemService

mysql - 在 MySQL 查询中遍历 JSON

javascript - JS/PHP/ZendFramework - 当我用 php 和 ajax 单击按钮时更新我的​​数据表