簡體   English   中英

如何在 Java 中的數組中獲取 json 數據?

[英]How can I get the json data in an array in an array in Java?

我想用 Wordpress rest Z8A5DA52ED126447D359E70C05721A 在 android 工作室中獲取數據。 但我無法獲取系列內的數組中的數據。 我嘗試了 for 循環,但它沒有用。 下圖中帶下划線的系列是類別名稱,並且是可變的。 我想得到名字name:這個系列下的數據,但是我失敗了。 如果你能幫助我,我會很高興。

在此處輸入圖像描述

final String GET_URL = Server.WORDPRESS_REST_API_URL + Server.SERVER_URL + Get.SERVER_JSON_RECENTLY_POSTS;

        Log.d("serverurl", GET_URL);


        StringRequest request = new StringRequest(Request.Method.GET, GET_URL, new Response.Listener<String>() {
            @Override
            public void onResponse(String response) {


                if (!response.equals(null)) {

                    Log.d("Your Array Response", response);

                    try {

                        JSONObject jsonObj = new JSONObject(response);
                        JSONArray jsonArray = jsonObj.getJSONArray(Get.SERVER_JSON_RECENTLY_POSTS_ARRAY);

                        for (int j = 0; j < jsonArray.length(); j++) {

                            Log.d("jsonarrays", String.valueOf(jsonArray) + j);


                            JSONObject jsonObject = jsonArray.getJSONObject(j);
                            JSONObject jsonObjects = jsonObject.getJSONObject("categories");
                            JSONObject jsonObjects2 = jsonObjects.getJSONObject("name");

                             Log.d("jsonobjects", String.valueOf(jsonObjects2));
}

                    } catch (JSONException e) {
                        e.printStackTrace();
                        Log.d("Your error",e.getMessage());
                    }
                }

                else {
                    Log.d("Your Array Response", "Data Null");
                }

首先,我建議您根據變量在 JSON 中的含義來命名變量,這將使您(和我們)更容易可視化。

似乎您的類別也是一個數組,並且在您的 for 循環中,您沒有遍歷它。 保存類別的變量應該是 JSONArray,並且數組的 position 0 將是您嘗試獲取的 JSONObject。

如果我正確理解你的代碼, jsonObjects應該是我正在談論的數組,遍歷它並嘗試從里面的 JSONObjects 獲取你想要的屬性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM