Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在android中创建Json多数组字符串_Android_Json - Fatal编程技术网

在android中创建Json多数组字符串

在android中创建Json多数组字符串,android,json,Android,Json,我正在尝试创建包含多个JsonArray和JsonObject的Json字符串。我想创建Json字符串,格式如下所示: [ { "CustomerId": -1, "PoolGuyId": 117, "FilterChanges": [ { "FilterChangeId": -1, "CustomerId": -1, "Reminders": [ {

我正在尝试创建包含多个
JsonArray
JsonObject
的Json字符串。我想创建Json字符串,格式如下所示:

[
{
    "CustomerId": -1,
    "PoolGuyId": 117,
    "FilterChanges": [
        {
            "FilterChangeId": -1,
            "CustomerId": -1,
            "Reminders": [
                {
                    "ReminderId": -1,
                    "FilterChangeId": -1,
                    "CustomerId": -1
                },
                {
                    "ReminderId": -2,
                    "FilterChangeId": -1,
                    "CustomerId": -1
                }
            ]
        },
        {
            "FilterChangeId": -2,
            "CustomerId": -1,
            "Reminders": [
                {
                    "ReminderId": -3,
                    "FilterChangeId": -1,
                    "CustomerId": -1
                }
            ]
        }
    ],
    "IsDeleted": false
}
]
我尝试了很多参考资料,但仍然没有创建字符串。 帮帮我

我正在从数据库中获取价值。在sqlite数据库中有3个表,分别命名为customerDetails、JobHistory和Reminder。在这些表中存储了多个值

try {
        customerDetailsTable = new CustomerDetailsTable(con);
        customerDetailsTable.open();
        arrayListCustomer = customerDetailsTable.getAllContacts();
        customerDetailsTable.close();
        JSONObject objCust = null;
        JSONArray jsonArrayCust = new JSONArray();
        for (int i = 0; i < arrayListCustomer.size(); i++) {
            customerDetailsSetGet = arrayListCustomer.get(i);
            objCust = new JSONObject();
            try {
                objCust.put("CustomerId", customerDetailsSetGet.getCustomerID());
                objCust.put("PoolGuyId", customerDetailsSetGet.getPoolGuyId());
               } catch (JSONException e) {
            }
            ArrayList<JobHistorySetGet> arrayListjobHistory = new ArrayList<>();
            jobHistoryTable = new JobHistoryTable(con);
            jobHistoryTable.open();
            arrayListjobHistory = jobHistoryTable.getJobsAsPerCustId(customerDetailsSetGet.getCustomerID());
            jobHistoryTable.close();
            JSONObject objJobHis = null;
            JSONArray jsonArrayJob = new JSONArray();
            for (int j = 0; j < arrayListjobHistory.size(); j++) {
                jobHistorySetGet = arrayListjobHistory.get(j);
                objJobHis = new JSONObject();
                try {
                    objJobHis.put("FilterChangeId", jobHistorySetGet.getFilterChangeId());
                    objJobHis.put("CustomerId", jobHistorySetGet.getCustomerId());
                } catch (JSONException e) {

                }
                ArrayList<ReminderSetGet> arrayListReminder = new ArrayList<>();
                reminderTable = new ReminderTable(con);
                reminderTable.open();
                arrayListReminder = reminderTable.getReminderAsPerJobID(jobHistorySetGet.getId());
                reminderTable.close();
                JSONArray jsonArrayReminder = new JSONArray();
                JSONObject objReminder = null;
                for (int k = 0; k < arrayListReminder.size(); k++) {
                    reminderSetGet = arrayListReminder.get(k);
                    objReminder = new JSONObject();
                    try {
                        Log.d("Anuj", "9");
                        objReminder.put("ReminderId", reminderSetGet.getReminderId());
                        objReminder.put("FilterChangeId", reminderSetGet.getFilterChangeId());
                        objReminder.put("CustomerId", reminderSetGet.getCustomerId());
                        jsonArrayReminder.put(objReminder);
                    } catch (JSONException e) {
                    }
                }
                objJobHis.put("Reminders", jsonArrayJob.toString());
                jsonArrayJob.put(objJobHis);
            }

            objCust.putOpt("FilterChanges", jsonArrayJob.toString());
            jsonArrayCust.put(objCust);
         }
        JSONObject finalobject = new JSONObject();
        finalobject.put("Final", jsonArrayCust.toString());
    } catch (SQLException e) {
        e.printStackTrace();
    } catch (JSONException e) {
        e.printStackTrace();
    }catch (Exception e) {
        e.printStackTrace();
    }
试试看{
customerDetailsTable=新customerDetailsTable(con);
customerDetailsTable.open();
arrayListCustomer=customerDetailsTable.getAllContacts();
customerDetailsTable.close();
JSONObject objCust=null;
JSONArray jsonArrayCust=新的JSONArray();
对于(int i=0;i

我的要求是按层次顺序排列的,这意味着可能有多个客户表,每个客户表中都有多个作业,每个作业中都有多个提醒。试试这个。这个是用来根据json生成json字符串的

try {
        customerDetailsTable = new CustomerDetailsTable(con);
        customerDetailsTable.open();
        arrayListCustomer = customerDetailsTable.getAllContacts();
        customerDetailsTable.close();
        JSONObject objCust = null;
        JSONArray jsonArrayCust = new JSONArray();
        for (int i = 0; i < arrayListCustomer.size(); i++) {
            customerDetailsSetGet = arrayListCustomer.get(i);
            objCust = new JSONObject();
            try {
                objCust.put("CustomerId", customerDetailsSetGet.getCustomerID());
                objCust.put("PoolGuyId", customerDetailsSetGet.getPoolGuyId());
            } catch (JSONException e) {
            }
            ArrayList<JobHistorySetGet> arrayListjobHistory = new ArrayList<>();
            jobHistoryTable = new JobHistoryTable(con);
            jobHistoryTable.open();
            arrayListjobHistory = jobHistoryTable.getJobsAsPerCustId(customerDetailsSetGet.getCustomerID());
            jobHistoryTable.close();
            JSONObject objJobHis = null;
            JSONArray jsonArrayJob = new JSONArray();
            for (int j = 0; j < arrayListjobHistory.size(); j++) {
                jobHistorySetGet = arrayListjobHistory.get(j);
                objJobHis = new JSONObject();
                try {
                    objJobHis.put("FilterChangeId", jobHistorySetGet.getFilterChangeId());
                    objJobHis.put("CustomerId", jobHistorySetGet.getCustomerId());
                } catch (JSONException e) {

                }
                ArrayList<ReminderSetGet> arrayListReminder = new ArrayList<>();
                reminderTable = new ReminderTable(con);
                reminderTable.open();
                arrayListReminder = reminderTable.getReminderAsPerJobID(jobHistorySetGet.getId());
                reminderTable.close();
                JSONArray jsonArrayReminder = new JSONArray();
                JSONObject objReminder = null;
                for (int k = 0; k < arrayListReminder.size(); k++) {
                    reminderSetGet = arrayListReminder.get(k);
                    objReminder = new JSONObject();
                    try {
                        Log.d("Anuj", "9");
                        objReminder.put("ReminderId", reminderSetGet.getReminderId());
                        objReminder.put("FilterChangeId", reminderSetGet.getFilterChangeId());
                        objReminder.put("CustomerId", reminderSetGet.getCustomerId());
                        jsonArrayReminder.put(objReminder);
                    } catch (JSONException e) {
                    }
                }
                objJobHis.put("Reminders",jsonArrayReminder);
                jsonArrayJob.put(objJobHis);
            }

            objCust.putOpt("FilterChanges", jsonArrayJob);
            jsonArrayCust.put(objCust);
        }
        JSONObject finalobject = new JSONObject();
        finalobject.put("Final", jsonArrayCust);
    } catch (SQLException e) {
        e.printStackTrace();
    } catch (JSONException e) {
        e.printStackTrace();
    }catch (Exception e) {
        e.printStackTrace();
    }
试试看{
customerDetailsTable=新customerDetailsTable(con);
customerDetailsTable.open();
arrayListCustomer=customerDetailsTable.getAllContacts();
customerDetailsTable.close();
JSONObject objCust=null;
JSONArray jsonArrayCust=新的JSONArray();
对于(int i=0;i