0

In my application am get the J SON response like this

{
"orderDetails": [
    {
        "order_details": {
            "branch_code": 0,
            "cust_code": 87,
            "custom_instructions": "<null>",
            "merchant_code": "<null>",
            "order_number": 419,
            "order_type_code": 1,
            "packing_charge": 0,
            "price": 200,
            "product_code": 21,
            "quantity": 1,
            "value": 200
        },
        "order_headers": {
            "branch_code": 0,
            "cust_code": 87,
            "delivered_time": "<null>",
            "delivery_charge": 23,
            "delivery_date": "2013-05-02",
            "delivery_support": "",
            "delivery_time": "12:52:25",
            "grand_total": 354,
            "merchant_code": "<null>",
            "order_datetime": "2013-05-02 12:52:25",
            "order_status": "Pending",
            "order_type_code": 1,
            "order_value": 354,
            "packing_charge": 0,
            "payment_status": "Pending",
            "payment_type": "Cash",
            "sub_total": 325,
            "vat_percent": 7
        }
    },
    {
        "order_details": {
            "branch_code": 0,
            "cust_code": 87,
            "custom_instructions": "<null>",
            "merchant_code": "<null>",
            "order_number": 419,
            "order_type_code": 1,
            "packing_charge": 0,
            "price": 125,
            "product_code": 35,
            "quantity": 1,
            "value": 125
        },
        "order_headers": {
            "branch_code": 0,
            "cust_code": 87,
            "delivered_time": "<null>",
            "delivery_charge": 23,
            "delivery_date": "2013-05-02",
            "delivery_support": "",
            "delivery_time": "12:52:25",
            "grand_total": 354,
            "merchant_code": "<null>",
            "order_datetime": "2013-05-02 12:52:25",
            "order_status": "Pending",
            "order_type_code": 1,
            "order_value": 354,
            "packing_charge": 0,
            "payment_status": "Pending",
            "payment_type": "Cash",
            "sub_total": 325,
            "vat_percent": 7
        }
    }
],
"orderSuccess": 1
}

I want to put the all order_details in single Array list,I don't know how to solve this problem.Can any one know please help me to solve this problem.

3
  • And your problem is ? Commented May 2, 2013 at 11:35
  • @Pragnani am not able to get all the order_details value.am able to get only last order details value Commented May 2, 2013 at 11:42
  • How are you parsing it.. Post your code so that I can help you. Do you want all order_details in ArrayList? Commented May 2, 2013 at 11:54

5 Answers 5

1
JSONArray j1;
    JSONObject ordeedetail,orderheader,mainobject,main;
    String custinstruction,brnchcode,custcode,deliverytime;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        try {
            main = new JSONObject(jsonstring);
            Log.e(main.toString(),"string");
            j1 = main.getJSONArray("orderDetails");
            Log.e(j1.toString(),"string");
            for(int i=0;i<j1.length();i++)
            {
                mainobject= j1.getJSONObject(i);
                 if (mainobject.has("order_details")){
                     ordeedetail = mainobject.getJSONObject("order_details");   
                     brnchcode=ordeedetail.getString("branch_code").toString();
                     Log.e(brnchcode.toString(),"branch_code");
                     custcode=ordeedetail.getString("cust_code").toString();  
                     Log.e(custcode.toString(),"cust_code");
                     custinstruction=ordeedetail.getString("custom_instructions").toString(); 
                     Log.e(custinstruction.toString(),"custinstruction");
                 }
                 else if(mainobject.has("order_headers")){
                     orderheader = mainobject.getJSONObject("order_details");   
                     brnchcode=orderheader.getString("branch_code").toString();
                     Log.e(brnchcode.toString(),"branch_code");
                     custcode=orderheader.getString("cust_code").toString();  
                     Log.e(custcode.toString(),"cust_code");
                     deliverytime=orderheader.getString("delivered_time").toString(); 
                     Log.e(custinstruction.toString(),"deliverytime");
                 }
            }
        } catch (JSONException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
try this logic....
Sign up to request clarification or add additional context in comments.

Comments

0
// Convert String to json object
JSONObject json = new JSONObject(responseString);

// get order_details json object
JSONObject json_order_details = json.getJSONObject("order_details");

// get value from LL Json Object

myArrayList1.add(json_order_details.getString("branch_code"));
myArrayList2.add(json_order_details.getString("cust_code"));
myArrayList3.add(json_order_details.getString("order_number"));
myArrayList4.add(json_order_details.getString("price"));
.
. 
.

Comments

0

It's simple question, and you can solved it yourself. Just read JSON in Android - Tutorial or Android JSON Parsing Tutorial

Try to do everything yourself, instead copy/paste StackOverflow.
Regards

Upd Sorry, it must be a comment.

Comments

0

You can use an arraylist of hashmaps to solved this like

ArrayList<HashMap<String,String>> List=new ArrayList<HashMap<String,String>>;
HashMap myHashMap=new HashMap<String, String>();
myHashMap.put(" ",values);
List.add(myHashMap);

Comments

0

I did not check the code, this code help you need to add more things as reference

 public void parse(String data ){
    JsonObject j1 = new JsonObject(data);
    String orderSuccess = j1.getString("orderSuccess");

    if(j1.has("orderDetails"))
    JsonArray jArray = new JsonArray(j1.getString("orderDetails"));
    //jArray loop with size 
    for(i=0;i<jsonArray.length() ; i++){
    ArrayList<FeedObject> arrayList = new ArrayList<FeedObject>();
    FeedObject feedObject = new FeddObject ();
    JsonObject j2 = jArray.getJsonObject(i);

    if(j2.has("order_details")){
    JsonObject j3 = j2.getJsonObject("order_details");
    }

    if(j2.has("order_headers")){
    JsonObject j4 = j2.getJsonObject("order_headers");
    }

    feedObject.branch_code__order_details = j3.getString("branch_code");
    .
    .
    .
    .
    feedObject.branch_code__order_headers = j4.getString("branch_code");
    .
    .
    .
    .


    feedbject.orderSuccess  = orderSuccess ;

    }


    }

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.