【问题标题】:JSON Array parsing where key is missing in the key-value pairJSON数组解析键值对中缺少键的地方
【发布时间】:2020-06-04 16:08:16
【问题描述】:

我正在尝试解析一个看起来像这样的 JSON 数组

"data":["data1","data2","data3"]

如果我写JSONArray arr = obj1.getJSONArray("data");,这将为我提供 JSON 数组,但由于缺少键值对中的键名,我将如何检索“data1”、“data2”和“data3”?

【问题讨论】:

  • 你的 json 数组应该是这样的 {"data":["key1":"data1","key2":"data2","key3":"data3"]}
  • @RupeshRathod 我无法更改我的 JSON。此 json 是从 API 中获取的,无法更改 API。

标签: java android arrays json parsing


【解决方案1】:

假设这是您的 JSON,

{"data":["data1","data2","data3"]}

使用以下方法检索数组,

JSONArray arrJson = jsonData.getJSONArray("data");     
String[] arr = new String[arrJson.length()];     
for(int i = 0; i < arrJson.length(); i++) {    
    arr[i] = arrJson.getString(i);     
}

【讨论】:

    【解决方案2】:

    JSON 数组允许非 json 子级。在这种情况下,孩子是字符串值:

    for(int i=0;i<arr.length();i++) {
        String value = arr.getString(i);
    }
    

    我的语法可能不准确

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-18
      • 2020-10-21
      • 2019-05-09
      • 1970-01-01
      • 1970-01-01
      • 2021-05-11
      • 1970-01-01
      • 2021-07-28
      相关资源
      最近更新 更多