Как получить n-й элемент из объекта JSON

#java #android #jsonobject

#java #Android #json

Вопрос:

Я хочу извлечь первый объект из json ниже:

 "categories": {
        "Blues": {
          "ID": 5,
          "name": "Blues",
          "year": "1980"
        },
        "Reggae": {
          "ID": 62,
          "name": "Reggae",
          "year": "1992",
        }
      },
      ...

  }
  

В настоящее время я разбираю его следующим образом:

    JSONObject catsObject = jsonObject.getJSONObject("categories");
                  JSONArray names = catsObject.names();
                  JSONObject categObj = object.getJSONObject(names.get(0).toString());
                  String year = categObj.getString("year");
                  Log.d(TAG, "The year is "   year);
  

Но строка JSONObject categObj = object.getJSONObject(names.get(0).toString()); возвращает эту ошибку

10-19 22:14:42.554 29056-29056/com.ozuf.musichistory W/System.err: org.json.JSONException: Нет значения для Blues

Комментарии:

1. Что такое object ? Я думаю, что вы хотите JSONObject categObj = catsObject.getJSONObject(names.get(0).toString()); вместо этого.

2. object не определен, думая, что это ошибка

3. @azurefrog спасибо. Это исправлено.