简体   繁体   English

如果他们在Android中没有jsonobject,如何从Jsonarray获取Jsonarray

[英]How to get Jsonarray from Jsonarray if they dont have jsonobject in android

How to get jsonarray from jsonarray? 如何从jsonarray获取jsonarray?

code which i have tried. 我尝试过的代码。

              for(loop) 
             List<String> stringList = new ArrayList<>();
                    try {
                        JSONArray responses = new JSONArray(response);
                        for (int i = 0; i < responses.length(); i++) {
                            stringList.add(responses.getString(i));
                        }

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

    i want to get this json:


         [
            "maj",
                [
                   "maja salvador",
                   "maje",
                   "majboos",
                   "major lazer",
                   "majili",
                   "majid al futtaim",
                   "majorca",
                   "majestic",
                   "major",
                   "majnoon qahwa"
                  ]
        ]

here is the link you can try. 这是您可以尝试的链接。 http://suggestqueries.google.com/complete/search?client=firefox&q=maj http://suggestqueries.google.com/complete/search?client=firefox&q=maj

You can try this one like below 您可以像下面这样尝试

try {
            JSONArray jsonArray = new JSONArray("YOUR_REPONSE");

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

                if (jsonArray.get(i).toString().contains("[")) {
                    //json array

                    JSONArray innerJSSONArray = new JSONArray(jsonArray.getString(i));
                    for (int j = 0; j < innerJSSONArray.length(); j++) {

                        Log.e("JSONARRAY",innerJSSONArray.getString(i));

                    }


                }
                else
                {
                    Log.e("WITH_OUT_JSONARRAY",jsonArray.getString(i));

                }

            }


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

    }

You can parse data using like bellow solution 您可以使用以下解决方案解析数据

JSONArray jsonArray;
        try {
            jsonArray = new JSONArray(jsonData); //Set your mixed data
            for (int i = 0; i < jsonArray.length(); i++) {
                Object object = jsonArray.get(i);
                if (object instanceof JSONArray) { // Check is it array or object 
                    JSONArray jsonSubArray = jsonArray.getJSONArray(i);
                    for (int k = 0; k < jsonSubArray.length(); k++) {
                        //Whatever you want to parse Key value object
                    }
                } else {
//                This is the JSON object so you can access directly key value
                }
            }
        } catch (JSONException e) {
            e.printStackTrace();
        }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM