java - 将 JSON 对象转换为 Java 中的简单变量

标签 java json

我有一个非常重的 JSON,其中有很多参数,我想将其转换为仅包含其中几个参数的 Java 对象。

像这样的直接转换

DataObject obj = gson.fromJson(br, DataObject.class);

不是一个选项。

如何访问对象内的各个字段(仅 value 下的 datetype 下的 attributes )? JSON 示例:

{"results":[
    {"date":{
        "attributes":{
        "type":null},
        "value":"December 13, 2010"},
    "is_structured":"No",
    "completion_date":{
        "attributes":{
            "type":"Anticipated"},
        "value":"March 2016"},
     ....

最佳答案

如果您不想直接将输入转换为预期的对象,您可以从您的输入创建一个 JSONObject ,例如

JSONObject root = new JSONObject(input);

然后从那里准确导航到您需要的属性,例如:

root.getJSONArray("results").getJSONObject(0).getString("is_structured");

编辑:(在日期下接收)

root.getJSONArray("results").getJSONObject(0).getJSONObject("date").getString("value");

关于java - 将 JSON 对象转换为 Java 中的简单变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29392123/

相关文章:

java - 同一类中的多个 JComboBox 事件处理

java - Windows 和 Linux 之间的 spring i18n 行为不同

java - 在Google App Engine上配置Quercus

java - 单击 RecyclerView 项时出现 IndexOutOfBoundsException

java - 将两个java数组合并为一个json字符串

java - 使用java通过socket接收python json

json - 获取 JSON 并在 Swift 中解析它?

Json 解析 Swift 3 Alamofire

php - Javascript 删除 JSON 元素

java - 为什么 JDK 8 API 文档中存在实例方法选项卡?