如何在Android中的另一个JSON数组中解析JSON数组

前端之家收集整理的这篇文章主要介绍了如何在Android中的另一个JSON数组中解析JSON数组前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
拜托,请帮帮我..
我正在开发一个项目,我从 JSON格式的Web服务获取数据.我试图解析它,但我无法做到.我有这个json数据 –
  1. {
  2. "response": {
  3. "status": {
  4. "code": "1","message": "sucess","user_id": "1"
  5. },"foods": [
  6. {
  7. "char": "A","content": [
  8. {
  9. "food_name": "add Malt"
  10. },{
  11. "food_name": "a la mode"
  12. },{
  13. "food_name": "Almonds"
  14. }
  15. ]
  16. },{
  17. "char": "Z","content": [
  18. {
  19. "food_name": "Zebra Cakes"
  20. },{
  21. "food_name": "Zucchini,Baby"
  22. },{
  23. "food_name": "zxc"
  24. }
  25. ]
  26. }
  27. ]
  28. }
  29. }

从这里我成功地获得了“食物”阵列,但当我试图获得“内容”数组和food_name数据时,我陷入困境.

我正在使用此代码,但我没有得到任何解决方案,请检查此剪辑代码.

  1. protected String doInBackground(String... args) {
  2. // Building Parameters
  3. List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
  4. nameValuePairs.add(new BasicNameValuePair("method","eat_tracking_details"));
  5. nameValuePairs.add(new BasicNameValuePair("uid",userid));
  6. // getting JSON string from URL
  7. JSONObject json = jsonParser.makeHttpRequest(JSONParser.urlname,"GET",nameValuePairs);
  8. //System.out.println("****json*"+json);
  9. if (json != null) {
  10. try {
  11. JSONObject response = json.getJSONObject("response");
  12. JSONObject status = response.getJSONObject("status");
  13. code = status.getString("code");
  14. JSONArray FoodArray = response.getJSONArray("foods");
  15. for (int i = 0; i < FoodArray.length(); i++) {
  16. String character = FoodArray.getJSONObject(i).getString("char");
  17. System.out.println("*****character****************"+character);
  18. JSONArray FoodNameArray = new JSONArray(FoodArray.getJSONObject(i).getString("content"));
  19. System.out.println("====================///////////"+FoodNameArray);
  20.  
  21. for (int j = 0; j <FoodNameArray.length(); j++) {
  22. String Foodname = FoodArray.getJSONObject(j).getString("food_name");
  23. System.out.println("@@@@@@@@@@@@@"+Foodname);
  24. }
  25. }
  26.  
  27. } catch (JSONException e) {
  28. // TODO: handle exception
  29. }
  30. }

检查此网址以获取网络服务响应 –
WEB-SERVICE URL

解决方法

您需要使用以下代码替换相应的代码部分:
  1. for (int j = 0; j < FoodNameArray.length(); j++) {
  2. String Foodname = FoodNameArray.getJSONObject(j).getString("food_name");
  3. System.out.println("@@@@@@@@@@@@@" + Foodname);
  4. }

猜你在找的Android相关文章