Разбор строкового значения из Json Object Android - PullRequest
0 голосов

Я хочу получить данные из метода ApiVk response.responseString

String jsonStr1 =response.responseString;
JSONArray arr = new JSONArray(jsonStr1);
JSONObject jObj = arr.getJSONObject(0);
String date = jObj.getString("id");

И я получаю NPE Как мне разобрать строку, чтобы получить массив значений "id"

String jsonStr1 = "{\"response\":{\"count\":254,\"items\":[{\"last_name\":\"Екимов\",\"id\":325813465,\"first_name\":\"Артём\"},{\"last_name\":\"Виноградов\",\"id\":448209461,\"first_name\":\"Дэнчик\"},{\"last_name\":\"Κонстантинов\",\"id\":444441827,\"first_name\":\"Κонстантин\"}]}}";

1 Ответ

0 голосов
/ 25 ноября 2018

Для этого json:

{
  "response": {
      "count": 254,
      "items": [{
          "last_name": "Екимов",
          "id": 23892340,
          "first_name": "Артём"
      }, {
          "last_name": "Екимов",
          "id":  23892381,
          "first_name": "Артём"
      }, {
          "last_name": "Екимов",
          "id": 23828492,
          "first_name": "Артём"
      }]
  }
}

Анализ для получения идентификатора выглядит следующим образом:

try {
        JSONObject jsonresponse = jsonResponse.getJSONObject("response");
        JSONArray getJsonArray = jsonresponse.getJSONArray("items");
        for(int i = 0; i<getJsonArray.length();i++){
            JSONObject jsonAux= (JSONObject) jsonArrayItems.get(i);
            String id = jsonAux.getString("id");
            Log.e("ID = ",id);
        }
    } catch (JSONException e) {
        e.printStackTrace();
    }

Надеюсь, это поможет.

...