я получаю org. json .JSONException: нет значения для элемента, который присутствует в моем json массиве - PullRequest
0 голосов
/ 16 апреля 2020

, хотя у меня есть "feels_like" в моем массиве json, который вы можете увидеть в журнале информации об ошибках, он показывает, что его нет

КОД:

    protected void onPostExecute(String s) {
        super.onPostExecute(s);
        try {
            JSONObject jsonObject = new JSONObject(s);
            String weather = jsonObject.getString("weather");
            String temperature = jsonObject.getString("main");
            String ans = weather + temperature;
            Log.i("ans",ans);

            JSONArray arr = new JSONArray(ans);
            for (int i=0;i<arr.length();i++){
                JSONObject jsonpart = arr.getJSONObject(i);

                getweather.setText(jsonpart.getString("feels_like") + "\n" + jsonpart.getString("description"));

            }

        }catch (Exception e){
            e.printStackTrace();
        }
    }

ОШИБКА :

D/NetworkSecurityConfig: No Network Security Config specified, using platform default 2020-04-16 08:07:54.896
14696-14696/com.example.myweather I/ans:[{"id":800,"main":"Clear","description":"clear sky","icon":"01n"}]{"temp":4.62,"feels_like":1.84,"temp_min":1.67,"temp_max":7.78,"pressure":1017,"humidity":81}
2020-04-16 08:07:54.898 14696-14696/com.example.myweather W/System.err: org.json.JSONException: No value for feels_like
2020-04-16 08:07:54.899 14696-14696/com.example.myweather W/System.err:     at org.json.JSONObject.get(JSONObject.java:399)

Ответы [ 2 ]

0 голосов
/ 16 апреля 2020

Попробуйте это:

JSONObject jsonObject = new JSONObject(s);          // get root json object
JSONObject main = jsonObject.getJSONObject("main"); // get "main" json object from root
Double feelsLike = main.getDouble("feels_like");    // get "feels_like" value from main
0 голосов
/ 16 апреля 2020

Согласно трассировке стека, он смотрит, что в JSON нет ключа (feels_like) или пытается получить доступ от неправильного JSONObject. Если вы разместите JSON структуру, это может помочь лучше понять.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...