簡體   English   中英

如何在Android中使用循環數據創建JSON數組

[英]How to create JSON Array with Loop Data in Android

我能夠使用以下代碼在Java中創建JSON數組

JSONObject cust1 = new JSONObject();
    try {
        cust1.put("number", "1");
        cust1.put("name", "customer1");
        cust1.put("url", "url1");

    } catch (JSONException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    JSONObject cust2 = new JSONObject();
    try {
        cust2.put("number", "2");
        cust2.put("name", "customer3");
        cust2.put("url", "url3");

    } catch (JSONException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    JSONObject cust3 = new JSONObject();
    try {
        cust3.put("number", "3");
        cust3.put("name", "customer3");
        cust3.put("url", "url3");

    } catch (JSONException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    JSONObject cust4 = new JSONObject();
    try {
        cust4.put("number", "4");
        cust4.put("name", "customer4");
        cust4.put("url", "url4");

    } catch (JSONException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    JSONObject cust5 = new JSONObject();
    try {
        cust5.put("number", "5");
        cust5.put("name", "customer5");
        cust5.put("url", "url5");

    } catch (JSONException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    JSONArray jsonArray = new JSONArray();

    jsonArray.put(cust1);
    jsonArray.put(cust2);
    jsonArray.put(cust3);
    jsonArray.put(cust4);
    jsonArray.put(cust5);

    String jsonStr = jsonArray.toString();

    System.out.println(jsonStr);

輸出JSON

[{"number":"1","name":"customer1","url":"url1"},{"number":"2","name":"customer2","url":"url2"},{"number":"3","name":"customer3","url":"url3"},{"number":"4","name":"customer4","url":"url4"},{"number":"5","name":"customer5","url":"url5"}]

我有20個客戶,如何在有效代碼中創建with循環? 我的意思是最后一個字符只更改一個數字。

解決了Android.K.Doe和Randyka Yudhistira的問題

int data = 20;
    JSONArray obj = new JSONArray();
    try {
        for(int i=1;i<=data;i++){
            // 1st object

            JSONObject cust= new JSONObject();
            cust.put("number",String.valueOf(i));
            cust.put("name","customer"+i);
            cust.put("url","url"+i);

            obj.put(cust);
        }
    } catch (JSONException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    }

為客戶創建一個對象,然后添加到列表中。 然后試試這個。

ArrayList<Customer> list = new ArrayList()<>;
JSONArray jArray = new JSONArray();
for(int i = 0; i < count; count++){
  try {
    JSONObject cust = new JSONObject();
    cust.put("number", list.get(i).number);
    cust.put("name", list.get(i).name);
    cust.put("url", list.get(i).url);

    jArray.put("Cust"+i, cust);

  } catch (JSONException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
  }
}
JSONArray jsa = new JSONArray();
for (int i = 1; i<= 20; i++) {
  JSONObject cust = new JSONObject();
  cust.put("number",String.valueOf(i));
  cust.put("name","customer"+i);
  cust.put("url","url"+i);
  jsa.put(cust);
}
System.out.println(jsa.toString());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM