2016-04-29 4 views
-1

Мой JSON как это:Как получить данные из Json в андроида

{"Results": 
"orderList":[{ 
    "Orderid":"5","Amount":"250.00","Date":"2016-04-21 08:27:43.0"," 
     Items":["North Indian Veg-1","North Indian NonVeg-1","South Indian Veg-1","South Indian Non Veg-1"]}]} 

Я знаю, как получить «OrderId», «Сумма», «Дата» от «OrderList». Но я хочу также получить Элементы. Как получить Элементы сверху json.

код здесь:

JSONObject obj = new JSONObject(new String(response)); 
    JSONArray result = obj.getJSONArray("Results"); 

    if(result!=null&&result.length()>0){ 
     for(int i = 0;i<result.length();i++){ 
      JSONObject jsonResultObject = result.getJSONObject(i); 
      JSONArray order = jsonResultObject.getJSONArray("orderList"); 

      if((order!=null && order.length()>0)){ 
       for(int k=0;k<order.length();k++){ 
        JSONObject jsonOrder = order.getJSONObject(k); 
        String orderId = jsonOrder.getString("Orderid").toString(); 
        String amount = jsonOrder.getString("Amount").toString(); 
        String date = jsonOrder.getString("Date").toString(); 
        } 
       } 
      } 
} 

Пожалуйста, кто-нибудь мне помочь ..

Заранее спасибо

+0

JSON не является действительным. вставьте свой json здесь для проверки и форматирования: https://jsonformatter.curiousconcept.com/ –

ответ

-1

Ваш JSON не является действительным, это должно быть что-то вроде:

{ 
    "orderList": 
    [ 
     { 
      "Orderid":"5", 
      "Amount":"250.00", 
      "Date":"2016-04-21 08:27:43.0", 
      "Items": 
      [ 
       "North Indian Veg-1", 
       "North Indian NonVeg-1", 
       "South Indian Veg-1", 
       "South Indian Non Veg-1" 
      ] 
     } 
    ] 
} 

Этот новый действующий JSON может быть проанализирован следующим образом:

JSONObject obj = new JSONObject(new String(response)); 
JSONArray orderList = obj.getJSONArray("orderList"); 
if(orderList != null && orderList.length() > 0) { 
    for (int i = 0; i < orderList.length(); i++) { 
     JSONObject jsonOrder = orderList.getJSONObject(i); 
     String orderId = jsonOrder.getString("Orderid"); 
     String amount = jsonOrder.getString("Amount"); 
     String date = jsonOrder.getString("Date"); 

     JSONArray items = jsonOrder.getJSONArray("Items"); 
     for (int j = 0; j < items.length(); j++) { 
      String jsonItem = items.getString(j); 
      //... 
     } 
    } 
} 
-1

получить ваши элементы данных с помощью этого

String item1 = getjsonObj("Results").getJsonArray("orderList").getJsonArray("Items").getstring(0); 

String item2 = getjsonObj("Results").getJsonArray("orderList").getJsonArray("Items").getstring(1); 

и сделать это до длины элемента массива в цикле

0

Это право структура JSON: при создании структуры JSon затем изменяется на jsonlint.com или при создании json-структуры используйте этот веб-сайт.

{ 
"orderList": [{ 
    "Orderid": "", 
    "Amount": "250.00", 
    "Date": "2016-04-21 08:27:43.0", 
    "Item": { 
     "North Indian Veg": "", 
     "North Indian NonVeg": "", 
     "South Indian Veg": "", 
     "South Indian Non Veg": "" 
    } 
}] 

}

Смежные вопросы