【问题标题】:How to get the json array from the json object?如何从 json 对象中获取 json 数组?
【发布时间】:2016-08-04 13:43:46
【问题描述】:

大家好,我需要你们的帮助来从 json 对象中读取 随机命名 数组。

在这个任务中,客户根据自己的要求制作json对象。

喜欢

 {
    "tags":[ "demo 1","demo 2","demo 3","demo 4","demo 5","N" ] 
 }

我使用 "N" 来定义一个数组中的无限数量的项目。

在此代码中,用户使用 tags 键将 json Array 放入 json 对象中。

用户也可以将强调文本数组设为客户端

  {
        "Clients":[ "demo 1","demo 2","demo 3","demo 4","demo 5","N" ] 
  }

我知道怎么解析

JSONArray jsonMainArr = new JSONArray(String.valueOf(ObjectName.getJSONArray("Keyname")));

现在我的问题是如果我们不知道 KeyNametagsClients

,如何获取 Json 数组

【问题讨论】:

  • 试试@himanshu 的回答。对你有帮助。

标签: android arrays json


【解决方案1】:

你可以这样做:

JSONObject mainJsonObject = new JSONObject(jsonString);
Iterator<?> keys = mainJsonObject.keys();
if (keys.hasNext()){
    String key = (String) keys.next();
    JSONArray jsonMainArr = mainJsonObject.getJSONArray(key);
}

在上面的代码中,我从原始jsonString 中获取主JsonObject,并使用迭代器获取对象内的第一个键并使用它来获取JsonArray

试试这个解决方案,如果您在实施该解决方案时遇到任何问题,请告诉我。

【讨论】:

  • 太好了,祝你有美好的一天!!
【解决方案2】:

试试这个不带键或标签的代码..

try {

    JSONArray itemArray=new JSONArray(jsonString);
    for (int i = 0; i < itemArray.length(); i++) {
        String value = itemArray.getString(i);
        Log.e("json", value);
    }
} catch (JSONException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-11-12
    • 2023-02-25
    • 2018-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多