Java 将JSON解析到表中

Java 将JSON解析到表中,java,android,json,Java,Android,Json,我如何将这个JSON解析成一个只选择其中几个部分的表?我正在使用Java通过Android Studio中的URL将其传递给移动应用程序。您的json代码是一个带有一些对象的json数组。要分析每个元素,应执行以下操作: [{"project_id":1,"date":"Undefined","project_code":"ea60f6190c","title":"test","description":"test","demo_url":null,"project_category_id":n

我如何将这个JSON解析成一个只选择其中几个部分的表?我正在使用Java通过Android Studio中的URL将其传递给移动应用程序。

您的json代码是一个带有一些对象的json数组。要分析每个元素,应执行以下操作:

[{"project_id":1,"date":"Undefined","project_code":"ea60f6190c","title":"test","description":"test","demo_url":null,"project_category_id":null,"client_id":null,"company_id":null,"staffs":"4,5,","budget":0,"timer_status":0,"timer_starting_timestamp":null,"total_time_spent":0,"progress_status":null,"timestamp_start":"1516874400","timestamp_end":"1516878000","project_status":1,"project_note":null,"institution_id":12,"project_state":2,"strata_manager":6,"site_contact":7,"place_of_service":18},{"project_id":2,"date":"27\/01\/2018","project_code":"b9197f9e0c","title":"test 2","description":"test 2","demo_url":null,"project_category_id":null,"client_id":null,"company_id":null,"staffs":"4,5,","budget":0,"timer_status":0,"timer_starting_timestamp":null,"total_time_spent":0,"progress_status":null,"timestamp_start":"1515484800","timestamp_end":"1515502800","project_status":1,"project_note":null,"institution_id":12,"project_state":0,"strata_manager":6,"site_contact":6,"place_of_service":18},{"project_id":3,"date":"Undefined","project_code":"1ed0450f71","title":"Sit quo sint necessitatibus","description":"Quia obcaecati nihil sit quo sint necessitatibus enim ut dicta in","demo_url":null,"project_category_id":null,"client_id":null,"company_id":null,"staffs":"","budget":0,"timer_status":0,"timer_starting_timestamp":null,"total_time_spent":0,"progress_status":null,"timestamp_start":null,"timestamp_end":null,"project_status":0,"project_note":null,"institution_id":12,"project_state":2,"strata_manager":5,"site_contact":6,"place_of_service":18},{"project_id":4,"date":null,"project_code":"49f120bade","title":"xczxc","description":"zcxzcxzcxz","demo_url":null,"project_category_id":null,"client_id":null,"company_id":null,"staffs":"","budget":0,"timer_status":0,"timer_starting_timestamp":null,"total_time_spent":0,"progress_status":null,"timestamp_start":null,"timestamp_end":null,"project_status":1,"project_note":null,"institution_id":12,"project_state":1,"strata_manager":5,"site_contact":8,"place_of_service":18},{"project_id":5,"date":null,"project_code":"d8d68134ee","title":"Freshwater, 65 Oliver Street, Build New House SP00001 QR123456","description":"bla bla bla","demo_url":null,"project_category_id":null,"client_id":null,"company_id":null,"staffs":"8,","budget":0,"timer_status":0,"timer_starting_timestamp":null,"total_time_spent":0,"progress_status":null,"timestamp_start":"1517533500","timestamp_end":"1517534400","project_status":1,"project_note":null,"institution_id":12,"project_state":1,"strata_manager":5,"site_contact":7,"place_of_service":0}]
试试看{
JSONArray JSONArray=新的JSONArray(yourJsonString);
JSONObject JSONObject;

对于(i=0;i只需遵循此操作并更新我的DTO类,在表中或任何其他位置填充此数组

   try{
    JSONArray jsonArray = new JSONArray(yourJsonString);
    JSONObject jsonObject;
    for(i=0;i<jsonArray.length();i++) {
         jsonObject = jsonArray.getJSONObject(i);
        //here you can parse whatever section you want
        String projectID = jsonObject.getString("project_id");
        String date = jsonObject.getString("date");
        //code for filling row number i
        }
    }
    catch (JSONException e) {
        e.printStackTrace();
    }

你说的桌子是什么意思?
  public class MainActivity extends AppCompatActivity {

String data = "[{\"project_id\":1,\"date\":\"Undefined\",\"project_code\":\"ea60f6190c\",\"title\":\"test\",\"description\":\"test\",\"demo_url\":null,\"project_category_id\":null,\"client_id\":null,\"company_id\":null,\"staffs\":\"4,5,\",\"budget\":0,\"timer_status\":0,\"timer_starting_timestamp\":null,\"total_time_spent\":0,\"progress_status\":null,\"timestamp_start\":\"1516874400\",\"timestamp_end\":\"1516878000\",\"project_status\":1,\"project_note\":null,\"institution_id\":12,\"project_state\":2,\"strata_manager\":6,\"site_contact\":7,\"place_of_service\":18},{\"project_id\":2,\"date\":\"27\\/01\\/2018\",\"project_code\":\"b9197f9e0c\",\"title\":\"test 2\",\"description\":\"test 2\",\"demo_url\":null,\"project_category_id\":null,\"client_id\":null,\"company_id\":null,\"staffs\":\"4,5,\",\"budget\":0,\"timer_status\":0,\"timer_starting_timestamp\":null,\"total_time_spent\":0,\"progress_status\":null,\"timestamp_start\":\"1515484800\",\"timestamp_end\":\"1515502800\",\"project_status\":1,\"project_note\":null,\"institution_id\":12,\"project_state\":0,\"strata_manager\":6,\"site_contact\":6,\"place_of_service\":18},{\"project_id\":3,\"date\":\"Undefined\",\"project_code\":\"1ed0450f71\",\"title\":\"Sit quo sint necessitatibus\",\"description\":\"Quia obcaecati nihil sit quo sint necessitatibus enim ut dicta in\",\"demo_url\":null,\"project_category_id\":null,\"client_id\":null,\"company_id\":null,\"staffs\":\"\",\"budget\":0,\"timer_status\":0,\"timer_starting_timestamp\":null,\"total_time_spent\":0,\"progress_status\":null,\"timestamp_start\":null,\"timestamp_end\":null,\"project_status\":0,\"project_note\":null,\"institution_id\":12,\"project_state\":2,\"strata_manager\":5,\"site_contact\":6,\"place_of_service\":18},{\"project_id\":4,\"date\":null,\"project_code\":\"49f120bade\",\"title\":\"xczxc\",\"description\":\"zcxzcxzcxz\",\"demo_url\":null,\"project_category_id\":null,\"client_id\":null,\"company_id\":null,\"staffs\":\"\",\"budget\":0,\"timer_status\":0,\"timer_starting_timestamp\":null,\"total_time_spent\":0,\"progress_status\":null,\"timestamp_start\":null,\"timestamp_end\":null,\"project_status\":1,\"project_note\":null,\"institution_id\":12,\"project_state\":1,\"strata_manager\":5,\"site_contact\":8,\"place_of_service\":18},{\"project_id\":5,\"date\":null,\"project_code\":\"d8d68134ee\",\"title\":\"Freshwater, 65 Oliver Street, Build New House SP00001 QR123456\",\"description\":\"bla bla bla\",\"demo_url\":null,\"project_category_id\":null,\"client_id\":null,\"company_id\":null,\"staffs\":\"8,\",\"budget\":0,\"timer_status\":0,\"timer_starting_timestamp\":null,\"total_time_spent\":0,\"progress_status\":null,\"timestamp_start\":\"1517533500\",\"timestamp_end\":\"1517534400\",\"project_status\":1,\"project_note\":null,\"institution_id\":12,\"project_state\":1,\"strata_manager\":5,\"site_contact\":7,\"place_of_service\":0}]\n";

ArrayList<MyDTO> myArray = new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    parseData(data);
}

private void parseData(String response) {


    try {
        JSONArray jsonArray=new JSONArray(response);
        for (int i=0;i<jsonArray.length();i++){
            JSONObject jsonObject = jsonArray.getJSONObject(i);
            MyDTO myDTO = new MyDTO();
            myDTO.setProjectId(Integer.parseInt(jsonObject.getString("project_id")));
            myDTO.setProjectDate(  jsonObject.getString("date"));
            myDTO.setProjectCode(jsonObject.getString("project_code"));
            myDTO.setTitle(jsonObject.getString("title"));

            myArray.add(myDTO);


        }

    }catch (JSONException je){

    }
}
}
    public class MyDTO {

private int projectId ;
private String projectDate;
private String projectCode;
private String title;


public int getProjectId() {
    return projectId;
}

public void setProjectId(int projectId) {
    this.projectId=projectId;
}

public String getProjectDate() {
    return projectDate;
}

public void setProjectDate(String projectDate) {
    this.projectDate=projectDate;
}

public String getProjectCode() {
    return projectCode;
}

public void setProjectCode(String projectCode) {
    this.projectCode=projectCode;
}

public String getTitle() {
    return title;
}

public void setTitle(String title) {
    this.title=title;
}
 }