无法使用url检索android中的所有json值

无法使用url检索android中的所有json值,android,json,arrays,jsonobject,Android,Json,Arrays,Jsonobject,我正在尝试使用android中的url检索json数据。我的json数组如下所示。我使用了下面的编码,但问题是我得到的jarray的长度等于1,尽管数组中有更多的值。其次,我得到的newarr的长度等于15,但相同的值显示了15次,即id=1显示了15次。我已经发布了代码,因为我对json非常陌生,请一步一步告诉我哪里出了问题 [ { "items": [ { "id": "11", "Item_Id": "123",

我正在尝试使用android中的url检索json数据。我的json数组如下所示。我使用了下面的编码,但问题是我得到的jarray的长度等于1,尽管数组中有更多的值。其次,我得到的newarr的长度等于15,但相同的值显示了15次,即id=1显示了15次。我已经发布了代码,因为我对json非常陌生,请一步一步告诉我哪里出了问题

[
{
    "items": [
        {
            "id": "11",
            "Item_Id": "123",
            "Item_Name": "Chicken Cream Soup",
            "Price": "8",
            "Currency": "AED",
            "Category": "Soup",
            "Description": "Creamy Chicken Soup with garnish & side helpings",
            "Unit": "2",
            "food_type": "Non",
            "Image_Large": "/images_large/chickensoup.jpg",
            "Image_Thumb": "/images_large/chickensoup.jpg",
            "Timestamp": "6/23/2014 9:49:43 PM",
            "Promotion": "",
            "Item_Name_arabic": "حساء الطماطم",
            "Item_Name_russian": "",
            "Currency_arabic": "درهم",
            "Currency_russian": "",
            "Description_arabic": "حساء الطماطم",
            "Description_russian": "",
            "Note": "",
            "Nutritional_info": "",
            "extrafield_1": "",
            "extrafield_2": "",
            "preferncess": [
                "No Salt",
                "Extra Sugar"
            ],
            "preferncess_ids": [
                "1",
                "2"
            ],
            "price": [
                "4",
                "5"
            ],
            "preferncess_arabic": [
                "لا الملح",
                "سكر اضافية"
            ]
        },
        {
            "id": "12",
            "Item_Id": "501",
            "Item_Name": "Pasta Napolitan",
            "Price": "18",
            "Currency": "AED",
            "Category": "Pasta",
            "Description": "Pasta in Napolitan Sauce",
            "Unit": "20",
            "food_type": "Non",
            "Image_Large": "/images_large/pasta.jpg",
            "Image_Thumb": "/images_large/pasta.jpg",
            "Timestamp": "6/23/2014 9:47:45 PM",
            "Promotion": "",
            "Item_Name_arabic": "حساء الطماطم",
            "Item_Name_russian": "",
            "Currency_arabic": "درهم",
            "Currency_russian": "",
            "Description_arabic": "حساء الطماطم",
            "Description_russian": "",
            "Note": "",
            "Nutritional_info": "",
            "extrafield_1": "",
            "extrafield_2": "",
            "preferncess": [
                "No Salt"
            ],
            "preferncess_ids": [
                "3"
            ],
            "price": [
                "5"
            ],
            "preferncess_arabic": [
                "لا الملح"
            ]
        },
  //some more values till id=25


  "categories": [
        {
            "categoryName": "Salads",
            "categoryShortName": "Salads",
            "catid": "0",
            "categoryArabicName": "سلطة خضراء"
        },
        {
            "categoryName": "Mezzah",
            "categoryShortName": "Mezzah",
            "catid": "1",
            "categoryArabicName": "المزة"
        },
    //some more values till id=25

   "questions": [
        {
            "q_id": "1",
            "q_question": "How would you rate our Menu ?",
            "q_option1": "Excellent",
            "q_option2": "Very Good",
            "q_option3": "Good",
            "q_option4": "Bad",
            "q_option5": "Terrible",
            "Timestamp": "9/12/2013 3:31:55 PM",
            "q_status": "1"
        },
        {
            "q_id": "2",
            "q_question": "How would you rate our presentation, taste and quality of food ?",
            "q_option1": "Excellent",
            "q_option2": "Very Good",
            "q_option3": "Good",
            "q_option4": "Bad",
            "q_option5": "Terrible",
            "Timestamp": "9/12/2013 3:31:55 PM",
            "q_status": "1"
        },
  //some more values here
Json解析代码

  String result = null;
        InputStream is = null;
        try{
                HttpClient httpclient = new DefaultHttpClient();

                HttpPost httppost = new HttpPost("http://166.62.17.208/json_preferencess.aspx");

                HttpResponse response = httpclient.execute(httppost); 

                HttpEntity entity = response.getEntity();
                is = entity.getContent();

                Log.e("log_tag", "connection success "+"nameValuePairs");

        }
        catch(Exception e)
        {
                Log.e("log_tag", "Error in http connection "+e.toString());


        }

        try
        {
                BufferedReader reader = new BufferedReader(new InputStreamReader(is,HTTP.UTF_8),8);
                StringBuilder sb = new StringBuilder();
                String line = null;
                while ((line = reader.readLine()) != null) 
                {
                        sb.append(line + "\n");

                }
                is.close();

                result=sb.toString();
              Log.e("log_tag", "result "+result.toString());
        }
        catch(Exception e)
        {
               Log.e("log_tag", "Error converting result "+e.toString());


        }

        try
        {
     JSONArray jArray = new JSONArray(result);
            String s="",s1,s2,s3,s4,s5,s6,s7,s8,s9;
            Log.w("Lengh",""+jArray.length());
            for(int i=0;i<jArray.length();i++){
                JSONArray newarr = jArray.getJSONObject(i).getJSONArray("items");
                Log.w("Lengh",""+newarr.length());
                for(int j= 0; j<newarr.length();j++){
                    JSONObject json_data = newarr.getJSONObject(i);
                    s=json_data.getString("id");
                    s1=json_data.getString("Item_Id");
                  Log.i("json display",""+s+""+s1);
                }
            }




        }
        catch(JSONException e)
        {
                Log.e("log_tag", "Error parsing data "+e.toString());

        }
这样试试

public String postData(String url, List<NameValuePair> nameValuePairs)
        throws Exception {
    // Getting the response handler for handling the post response
    ResponseHandler<String> res = new BasicResponseHandler();
    HttpPost postMethod = new HttpPost(url);

    // Setting the data that is to be sent
    postMethod.setEntity(new UrlEncodedFormEntity(nameValuePairs));
    // Execute HTTP Post Request
    String response = httpClient.execute(postMethod, res);
Log.i(TAG , "response :: "+response);
    return response;
}

我正在尝试检索数据而不是发布数据好的,然后告诉我您将在日志屏幕上打印所有数据。问题是我能够检索到id=11的第一个数据。jArray的长度为1,尽管其中大约有25个值。
rootObject = new JSONObject(postData(url,nameValuesPair));