数组型Json解析之细节

Json解析之细节

 ,ONE Goal,ONE Passion!
                                                 --czfy
换新工作将近有半个月了,也终于适应了新的工作环境和工作模式.现在也有更多的时间来整理自己想要学习的东西了.
  数组型的json数据,对于新学习编程的同学来说感觉不知道如何去解析,甚至连bean类都不知道该如何去写.我在以为同学那里拿到了一个数据源,下面接把解析过程中出现的问题写下来.

一: 开始解析

        try {
         //首先:   将数据源转化为JSONArray对象
            JSONArray array = new JSONArray(JsonString.jsonArray);


            for (int i = 0; i < array.length(); i++) {         //遍历数组中的json

                JSONObject obj = array.optJSONObject(i);//得到的obj
                Gson gson = new Gson();                     //使用gson去解析.
                bean bean = gson.fromJson(obj + "", bean.class);        //bean为json数据对应的一个bean类

//我们想拿到里层ChildrenBean的数据,可是这个数据源有事不对称的:在第3个{...}中是没有ChildrenBean的.所以我们要先判断一下,解析出来的每个子bean是否有ChildrenBean.下图可以看到数据结构效果:
                List<com.example.bean.bean.ChildrenBean> children = bean.getChildren();
// 此时一定注意不要用   children.isEmpty()判断是否有children
                if (null != children) {
                    for (int j = 0; j < children.size(); j++) {
       //这样就能得到最里层的name了      
                        String name = children.get(j).getName();

                    }
                }


            }


        } catch (JSONException e) {
            e.printStackTrace();
        }


备注: 为什么不用children.isEmpty()判断是否有children

/**
     * Returns whether this {@code List} contains no elements.
     *
     * @return {@code true} if this {@code List} has no elements, {@code false}
     *         otherwise.
     * @see #size
     */
 public boolean isEmpty();//这个方法时判断集合中是否有元素

    如果这样使用:
   List<com.example.bean.bean.ChildrenBean> children = bean.getChildren();
   children.isEmpty();
  // 当bean中没有children时,就变成了null.isEmpty();所以在这里不能用 children.isEmpty();而要用: null != children;  做判断

二 .另附数据源以及bean类

   有些人对bean类的写法不是很清晰,认为凡是数据源的字段,bean类中必须全有,而且,没有的bean类中也不能有,其实不是这样的.bean类中字段可以比数据源多或者少.到那时如果你用到某个字段的话,bean类中一定要有,而且不能写错.对于你不想用的字段可以不写如bean类中.如果bean类中多写了一个字段,也没问题,无非是你不用资字段就行了.

bean类

    /**
     * BaselineEndDate : 2010-02-01
     * BaselineStartDate : 2010-01-13
     * EndDate : 2010-02-02
     * Id : 1
     * Name : 计划
     * PercentDone : 40
     * Priority : 1
     * Responsible :
     * StartDate : 2010-01-18
     * children : [{"BaselineEndDate":"2010-01-28","BaselineStartDate":"2010-01-20","EndDate":"2010-01-28","Id":11,"Name":"调研","ParentId":1,"PercentDone":30,"Priority":1,"Responsible":"","StartDate":"2010-01-18","leaf":true},{"BaselineEndDate":"2010-02-01","BaselineStartDate":"2010-01-25","EndDate":"2010-02-02","Id":12,"Name":"分配资源","PercentDone":0,"Priority":0,"Responsible":"","StartDate":"2010-01-28","leaf":true},{"BaselineEndDate":"2010-02-01","BaselineStartDate":"2010-01-25","EndDate":"2010-02-02","Id":13,"Name":"收集文档","PercentDone":40,"Priority":1,"Responsible":"","StartDate":"2010-01-25","leaf":true},{"BaselineEndDate":"2010-02-04","BaselineStartDate":"2010-02-04","EndDate":"2010-02-02","Id":17,"Name":"汇报给领导","PercentDone":0,"Priority":0,"Responsible":"","StartDate":"2010-02-02","leaf":true}]
     * expanded : true
     */

    private String BaselineEndDate;
    private String BaselineStartDate;
    private String EndDate;
    private int Id;
    private String Name;
    private int PercentDone;
    private int Priority;
    private String Responsible;
    private String StartDate;
    private boolean expanded;
    /**
     * BaselineEndDate : 2010-01-28
     * BaselineStartDate : 2010-01-20
     * EndDate : 2010-01-28
     * Id : 11
     * Name : 调研
     * ParentId : 1
     * PercentDone : 30
     * Priority : 1
     * Responsible :
     * StartDate : 2010-01-18
     * leaf : true
     */

    private List<ChildrenBean> children;

    public String getBaselineEndDate() {
        return BaselineEndDate;
    }

    public void setBaselineEndDate(String BaselineEndDate) {
        this.BaselineEndDate = BaselineEndDate;
    }

    public String getBaselineStartDate() {
        return BaselineStartDate;
    }

    public void setBaselineStartDate(String BaselineStartDate) {
        this.BaselineStartDate = BaselineStartDate;
    }

    public String getEndDate() {
        return EndDate;
    }

    public void setEndDate(String EndDate) {
        this.EndDate = EndDate;
    }

    public int getId() {
        return Id;
    }

    public void setId(int Id) {
        this.Id = Id;
    }

    public String getName() {
        return Name;
    }

    public void setName(String Name) {
        this.Name = Name;
    }

    public int getPercentDone() {
        return PercentDone;
    }

    public void setPercentDone(int PercentDone) {
        this.PercentDone = PercentDone;
    }

    public int getPriority() {
        return Priority;
    }

    public void setPriority(int Priority) {
        this.Priority = Priority;
    }

    public String getResponsible() {
        return Responsible;
    }

    public void setResponsible(String Responsible) {
        this.Responsible = Responsible;
    }

    public String getStartDate() {
        return StartDate;
    }

    public void setStartDate(String StartDate) {
        this.StartDate = StartDate;
    }

    public boolean isExpanded() {
        return expanded;
    }

    public void setExpanded(boolean expanded) {
        this.expanded = expanded;
    }

    public List<ChildrenBean> getChildren() {
        return children;
    }

    public void setChildren(List<ChildrenBean> children) {
        this.children = children;
    }

    public static class ChildrenBean {
        private String BaselineEndDate;
        private String BaselineStartDate;
        private String EndDate;
        private int Id;
        private String Name;
        private int ParentId;
        private int PercentDone;
        private int Priority;
        private String Responsible;
        private String StartDate;
        private boolean leaf;

        public String getBaselineEndDate() {
            return BaselineEndDate;
        }

        public void setBaselineEndDate(String BaselineEndDate) {
            this.BaselineEndDate = BaselineEndDate;
        }

        public String getBaselineStartDate() {
            return BaselineStartDate;
        }

        public void setBaselineStartDate(String BaselineStartDate) {
            this.BaselineStartDate = BaselineStartDate;
        }

        public String getEndDate() {
            return EndDate;
        }

        public void setEndDate(String EndDate) {
            this.EndDate = EndDate;
        }

        public int getId() {
            return Id;
        }

        public void setId(int Id) {
            this.Id = Id;
        }

        public String getName() {
            return Name;
        }

        public void setName(String Name) {
            this.Name = Name;
        }

        public int getParentId() {
            return ParentId;
        }

        public void setParentId(int ParentId) {
            this.ParentId = ParentId;
        }

        public int getPercentDone() {
            return PercentDone;
        }

        public void setPercentDone(int PercentDone) {
            this.PercentDone = PercentDone;
        }

        public int getPriority() {
            return Priority;
        }

        public void setPriority(int Priority) {
            this.Priority = Priority;
        }

        public String getResponsible() {
            return Responsible;
        }

        public void setResponsible(String Responsible) {
            this.Responsible = Responsible;
        }

        public String getStartDate() {
            return StartDate;
        }

        public void setStartDate(String StartDate) {
            this.StartDate = StartDate;
        }

        public boolean isLeaf() {
            return leaf;
        }

        public void setLeaf(boolean leaf) {
            this.leaf = leaf;
        }
    }

原始数据源


[
    {
        "BaselineEndDate": "2010-02-01",
        "BaselineStartDate": "2010-01-13",
        "EndDate": "2010-02-02",
        "Id": 1,
        "Name": "计划",
        "PercentDone": 40,
        "Priority": 1,
        "Responsible": "",
        "StartDate": "2010-01-18",
        "children": [
            {
                "BaselineEndDate": "2010-01-28",
                "BaselineStartDate": "2010-01-20",
                "EndDate": "2010-01-28",
                "Id": 11,
                "Name": "调研",
                "ParentId": 1,
                "PercentDone": 30,
                "Priority": 1,
                "Responsible": "",
                "StartDate": "2010-01-18",
                "leaf": true
            },
            {
                "BaselineEndDate": "2010-02-01",
                "BaselineStartDate": "2010-01-25",
                "EndDate": "2010-02-02",
                "Id": 12,
                "Name": "分配资源",
                "PercentDone": 0,
                "Priority": 0,
                "Responsible": "",
                "StartDate": "2010-01-28",
                "leaf": true
            },
            {
                "BaselineEndDate": "2010-02-01",
                "BaselineStartDate": "2010-01-25",
                "EndDate": "2010-02-02",
                "Id": 13,
                "Name": "收集文档",
                "PercentDone": 40,
                "Priority": 1,
                "Responsible": "",
                "StartDate": "2010-01-25",
                "leaf": true
            },
            {
                "BaselineEndDate": "2010-02-04",
                "BaselineStartDate": "2010-02-04",
                "EndDate": "2010-02-02",
                "Id": 17,
                "Name": "汇报给领导",
                "PercentDone": 0,
                "Priority": 0,
                "Responsible": "",
                "StartDate": "2010-02-02",
                "leaf": true
            }
        ],
        "expanded": true
    },
    {
        "BaselineEndDate": "2010-03-15",
        "BaselineStartDate": "2010-01-23",
        "EndDate": "2010-03-20",
        "Id": 4,
        "Name": "实施阶段1",
        "PercentDone": 50,
        "Priority": 1,
        "Responsible": "",
        "StartDate": "2010-01-25",
        "children": [
            {
                "BaselineEndDate": "2010-01-25",
                "BaselineStartDate": "2010-01-20",
                "EndDate": "2010-01-30",
                "Id": 34,
                "Name": "准备工作",
                "PercentDone": 0,
                "Priority": 0,
                "Responsible": "",
                "StartDate": "2010-01-25",
                "leaf": true
            },
            {
                "BaselineEndDate": "2010-03-07",
                "BaselineStartDate": "2010-02-25",
                "EndDate": "2010-03-07",
                "Id": 14,
                "Name": "芯片评估",
                "PercentDone": 30,
                "Priority": 0,
                "Responsible": "",
                "StartDate": "2010-02-25",
                "leaf": true
            },
            {
                "BaselineEndDate": "2010-03-20",
                "BaselineStartDate": "2010-03-10",
                "EndDate": "2010-03-20",
                "Id": 16,
                "Name": "选择技术方案",
                "ParentId": 4,
                "PercentDone": 30,
                "Priority": 0,
                "Responsible": "",
                "StartDate": "2010-03-10",
                "leaf": true
            },
            {
                "BaselineEndDate": "2010-03-06",
                "BaselineStartDate": "2010-01-28",
                "EndDate": "2010-03-08",
                "Id": 15,
                "Name": "设计原型",
                "PercentDone": 40,
                "Priority": 0,
                "Responsible": "",
                "StartDate": "2010-01-30",
                "children": [
                    {
                        "BaselineEndDate": "2010-02-06",
                        "BaselineStartDate": "2010-01-27",
                        "EndDate": "2010-02-09",
                        "Id": 20,
                        "Name": "步骤 1",
                        "PercentDone": 30,
                        "Priority": 1,
                        "Responsible": "",
                        "StartDate": "2010-01-30",
                        "leaf": true
                    },
                    {
                        "BaselineEndDate": "2010-02-22",
                        "BaselineStartDate": "2010-02-17",
                        "EndDate": "2010-02-22",
                        "Id": 19,
                        "Name": "步骤 2",
                        "PercentDone": 40,
                        "Priority": 1,
                        "Responsible": "",
                        "StartDate": "2010-02-17",
                        "leaf": true
                    },
                    {
                        "BaselineEndDate": "2010-03-07",
                        "BaselineStartDate": "2010-02-25",
                        "EndDate": "2010-03-07",
                        "Id": 18,
                        "Name": "步骤 3",
                        "PercentDone": 100,
                        "Priority": 1,
                        "Responsible": "",
                        "StartDate": "2010-02-25",
                        "leaf": true
                    },
                    {
                        "BaselineEndDate": "2010-03-08",
                        "BaselineStartDate": "2010-03-04",
                        "EndDate": "2010-03-08",
                        "Id": 21,
                        "Name": "和用户沟通",
                        "PercentDone": 60,
                        "Priority": 0,
                        "Responsible": "",
                        "StartDate": "2010-03-04",
                        "leaf": true
                    }
                ],
                "expanded": true
            }
        ],
        "expanded": true
    },
    {
        "BaselineEndDate": "2010-03-08",
        "BaselineStartDate": "2010-03-08",
        "EndDate": "2010-03-08",
        "Id": 5,
        "Name": "用户签字确认",
        "PercentDone": 0,
        "Priority": 2,
        "Responsible": "",
        "StartDate": "2010-03-08",
        "leaf": true
    },
    {
        "BaselineEndDate": "2010-03-18",
        "BaselineStartDate": "2010-03-08",
        "EndDate": "2010-03-18",
        "Id": 6,
        "Name": "实施阶段 2",
        "PercentDone": 50,
        "Priority": 1,
        "Responsible": "",
        "StartDate": "2010-03-08",
        "children": [
            {
                "BaselineEndDate": "2010-03-18",
                "BaselineStartDate": "2010-03-08",
                "EndDate": "2010-03-18",
                "Id": 25,
                "Name": "任务 3",
                "PercentDone": 10,
                "Priority": 0,
                "Responsible": "",
                "StartDate": "2010-03-08",
                "leaf": true
            },
            {
                "BaselineEndDate": "2010-03-18",
                "BaselineStartDate": "2010-03-08",
                "EndDate": "2010-03-18",
                "Id": 26,
                "Name": "任务 2",
                "ParentId": 6,
                "PercentDone": 20,
                "Priority": 0,
                "Responsible": "",
                "StartDate": "2010-03-08",
                "leaf": true
            },
            {
                "BaselineEndDate": "2010-03-18",
                "BaselineStartDate": "2010-03-08",
                "EndDate": "2010-03-18",
                "Id": 27,
                "Name": "任务 1",
                "ParentId": 6,
                "PercentDone": 20,
                "Priority": 0,
                "Responsible": "",
                "StartDate": "2010-03-08",
                "leaf": true
            }
        ],
        "expanded": true
    },
    {
        "BaselineEndDate": "2010-03-17",
        "BaselineStartDate": "2010-03-17",
        "EndDate": "2010-03-17",
        "Id": 10,
        "Name": "客户签字 2",
        "PercentDone": 0,
        "Priority": 1,
        "Responsible": "",
        "StartDate": "2010-03-17",
        "leaf": true
    },
    {
        "BaselineEndDate": "2010-05-08",
        "BaselineStartDate": "2010-03-22",
        "EndDate": "2010-05-08",
        "Id": 8,
        "Name": "生产阶段 1",
        "PercentDone": 40,
        "Priority": 2,
        "Responsible": "",
        "StartDate": "2010-03-22",
        "children": [
            {
                "BaselineEndDate": "2010-04-07",
                "BaselineStartDate": "2010-03-22",
                "EndDate": "2010-04-07",
                "Id": 22,
                "Name": "装配",
                "PercentDone": 50,
                "Priority": 1,
                "Responsible": "",
                "StartDate": "2010-03-22",
                "leaf": true
            },
            {
                "BaselineEndDate": "2010-04-21",
                "BaselineStartDate": "2010-04-06",
                "EndDate": "2010-04-21",
                "Id": 23,
                "Name": "加载",
                "PercentDone": 20,
                "Priority": 2,
                "Responsible": "",
                "StartDate": "2010-04-06",
                "leaf": true
            },
            {
                "BaselineEndDate": "2010-05-04",
                "BaselineStartDate": "2010-04-14",
                "EndDate": "2010-05-08",
                "Id": 24,
                "Name": "基本测试",
                "PercentDone": 50,
                "Priority": 2,
                "Responsible": "",
                "StartDate": "2010-04-22",
                "leaf": true
            }
        ],
        "expanded": true
    },
    {
        "BaselineEndDate": "2010-05-11",
        "BaselineStartDate": "2010-05-02",
        "EndDate": "2010-05-15",
        "Id": 9,
        "Name": "验收测试",
        "PercentDone": 0,
        "Priority": 1,
        "Responsible": "",
        "StartDate": "2010-05-07",
        "leaf": true
    },
    {
        "BaselineEndDate": "2010-05-11",
        "BaselineStartDate": "2010-05-11",
        "EndDate": "2010-05-15",
        "Id": 7,
        "Name": "交付",
        "PercentDone": 40,
        "Priority": 1,
        "Responsible": "",
        "StartDate": "2010-05-15",
        "leaf": true
    }
]

放入代码中转义之后的数据源



  String jsonArray = "[\n" +
            "    {\n" +
            "        \"BaselineEndDate\": \"2010-02-01\",\n" +
            "        \"BaselineStartDate\": \"2010-01-13\",\n" +
            "        \"EndDate\": \"2010-02-02\",\n" +
            "        \"Id\": 1,\n" +
            "        \"Name\": \"计划\",\n" +
            "        \"PercentDone\": 40,\n" +
            "        \"Priority\": 1,\n" +
            "        \"Responsible\": \"\",\n" +
            "        \"StartDate\": \"2010-01-18\",\n" +
            "        \"children\": [\n" +
            "            {\n" +
            "                \"BaselineEndDate\": \"2010-01-28\",\n" +
            "                \"BaselineStartDate\": \"2010-01-20\",\n" +
            "                \"EndDate\": \"2010-01-28\",\n" +
            "                \"Id\": 11,\n" +
            "                \"Name\": \"调研\",\n" +
            "                \"ParentId\": 1,\n" +
            "                \"PercentDone\": 30,\n" +
            "                \"Priority\": 1,\n" +
            "                \"Responsible\": \"\",\n" +
            "                \"StartDate\": \"2010-01-18\",\n" +
            "                \"leaf\": true\n" +
            "            },\n" +
            "            {\n" +
            "                \"BaselineEndDate\": \"2010-02-01\",\n" +
            "                \"BaselineStartDate\": \"2010-01-25\",\n" +
            "                \"EndDate\": \"2010-02-02\",\n" +
            "                \"Id\": 12,\n" +
            "                \"Name\": \"分配资源\",\n" +
            "                \"PercentDone\": 0,\n" +
            "                \"Priority\": 0,\n" +
            "                \"Responsible\": \"\",\n" +
            "                \"StartDate\": \"2010-01-28\",\n" +
            "                \"leaf\": true\n" +
            "            },\n" +
            "            {\n" +
            "                \"BaselineEndDate\": \"2010-02-01\",\n" +
            "                \"BaselineStartDate\": \"2010-01-25\",\n" +
            "                \"EndDate\": \"2010-02-02\",\n" +
            "                \"Id\": 13,\n" +
            "                \"Name\": \"收集文档\",\n" +
            "                \"PercentDone\": 40,\n" +
            "                \"Priority\": 1,\n" +
            "                \"Responsible\": \"\",\n" +
            "                \"StartDate\": \"2010-01-25\",\n" +
            "                \"leaf\": true\n" +
            "            },\n" +
            "            {\n" +
            "                \"BaselineEndDate\": \"2010-02-04\",\n" +
            "                \"BaselineStartDate\": \"2010-02-04\",\n" +
            "                \"EndDate\": \"2010-02-02\",\n" +
            "                \"Id\": 17,\n" +
            "                \"Name\": \"汇报给领导\",\n" +
            "                \"PercentDone\": 0,\n" +
            "                \"Priority\": 0,\n" +
            "                \"Responsible\": \"\",\n" +
            "                \"StartDate\": \"2010-02-02\",\n" +
            "                \"leaf\": true\n" +
            "            }\n" +
            "        ],\n" +
            "        \"expanded\": true\n" +
            "    },\n" +
            "    {\n" +
            "        \"BaselineEndDate\": \"2010-03-15\",\n" +
            "        \"BaselineStartDate\": \"2010-01-23\",\n" +
            "        \"EndDate\": \"2010-03-20\",\n" +
            "        \"Id\": 4,\n" +
            "        \"Name\": \"实施阶段1\",\n" +
            "        \"PercentDone\": 50,\n" +
            "        \"Priority\": 1,\n" +
            "        \"Responsible\": \"\",\n" +
            "        \"StartDate\": \"2010-01-25\",\n" +
            "        \"children\": [\n" +
            "            {\n" +
            "                \"BaselineEndDate\": \"2010-01-25\",\n" +
            "                \"BaselineStartDate\": \"2010-01-20\",\n" +
            "                \"EndDate\": \"2010-01-30\",\n" +
            "                \"Id\": 34,\n" +
            "                \"Name\": \"准备工作\",\n" +
            "                \"PercentDone\": 0,\n" +
            "                \"Priority\": 0,\n" +
            "                \"Responsible\": \"\",\n" +
            "                \"StartDate\": \"2010-01-25\",\n" +
            "                \"leaf\": true\n" +
            "            },\n" +
            "            {\n" +
            "                \"BaselineEndDate\": \"2010-03-07\",\n" +
            "                \"BaselineStartDate\": \"2010-02-25\",\n" +
            "                \"EndDate\": \"2010-03-07\",\n" +
            "                \"Id\": 14,\n" +
            "                \"Name\": \"芯片评估\",\n" +
            "                \"PercentDone\": 30,\n" +
            "                \"Priority\": 0,\n" +
            "                \"Responsible\": \"\",\n" +
            "                \"StartDate\": \"2010-02-25\",\n" +
            "                \"leaf\": true\n" +
            "            },\n" +
            "            {\n" +
            "                \"BaselineEndDate\": \"2010-03-20\",\n" +
            "                \"BaselineStartDate\": \"2010-03-10\",\n" +
            "                \"EndDate\": \"2010-03-20\",\n" +
            "                \"Id\": 16,\n" +
            "                \"Name\": \"选择技术方案\",\n" +
            "                \"ParentId\": 4,\n" +
            "                \"PercentDone\": 30,\n" +
            "                \"Priority\": 0,\n" +
            "                \"Responsible\": \"\",\n" +
            "                \"StartDate\": \"2010-03-10\",\n" +
            "                \"leaf\": true\n" +
            "            },\n" +
            "            {\n" +
            "                \"BaselineEndDate\": \"2010-03-06\",\n" +
            "                \"BaselineStartDate\": \"2010-01-28\",\n" +
            "                \"EndDate\": \"2010-03-08\",\n" +
            "                \"Id\": 15,\n" +
            "                \"Name\": \"设计原型\",\n" +
            "                \"PercentDone\": 40,\n" +
            "                \"Priority\": 0,\n" +
            "                \"Responsible\": \"\",\n" +
            "                \"StartDate\": \"2010-01-30\",\n" +
            "                \"children\": [\n" +
            "                    {\n" +
            "                        \"BaselineEndDate\": \"2010-02-06\",\n" +
            "                        \"BaselineStartDate\": \"2010-01-27\",\n" +
            "                        \"EndDate\": \"2010-02-09\",\n" +
            "                        \"Id\": 20,\n" +
            "                        \"Name\": \"步骤 1\",\n" +
            "                        \"PercentDone\": 30,\n" +
            "                        \"Priority\": 1,\n" +
            "                        \"Responsible\": \"\",\n" +
            "                        \"StartDate\": \"2010-01-30\",\n" +
            "                        \"leaf\": true\n" +
            "                    },\n" +
            "                    {\n" +
            "                        \"BaselineEndDate\": \"2010-02-22\",\n" +
            "                        \"BaselineStartDate\": \"2010-02-17\",\n" +
            "                        \"EndDate\": \"2010-02-22\",\n" +
            "                        \"Id\": 19,\n" +
            "                        \"Name\": \"步骤 2\",\n" +
            "                        \"PercentDone\": 40,\n" +
            "                        \"Priority\": 1,\n" +
            "                        \"Responsible\": \"\",\n" +
            "                        \"StartDate\": \"2010-02-17\",\n" +
            "                        \"leaf\": true\n" +
            "                    },\n" +
            "                    {\n" +
            "                        \"BaselineEndDate\": \"2010-03-07\",\n" +
            "                        \"BaselineStartDate\": \"2010-02-25\",\n" +
            "                        \"EndDate\": \"2010-03-07\",\n" +
            "                        \"Id\": 18,\n" +
            "                        \"Name\": \"步骤 3\",\n" +
            "                        \"PercentDone\": 100,\n" +
            "                        \"Priority\": 1,\n" +
            "                        \"Responsible\": \"\",\n" +
            "                        \"StartDate\": \"2010-02-25\",\n" +
            "                        \"leaf\": true\n" +
            "                    },\n" +
            "                    {\n" +
            "                        \"BaselineEndDate\": \"2010-03-08\",\n" +
            "                        \"BaselineStartDate\": \"2010-03-04\",\n" +
            "                        \"EndDate\": \"2010-03-08\",\n" +
            "                        \"Id\": 21,\n" +
            "                        \"Name\": \"和用户沟通\",\n" +
            "                        \"PercentDone\": 60,\n" +
            "                        \"Priority\": 0,\n" +
            "                        \"Responsible\": \"\",\n" +
            "                        \"StartDate\": \"2010-03-04\",\n" +
            "                        \"leaf\": true\n" +
            "                    }\n" +
            "                ],\n" +
            "                \"expanded\": true\n" +
            "            }\n" +
            "        ],\n" +
            "        \"expanded\": true\n" +
            "    },\n" +
            "    {\n" +
            "        \"BaselineEndDate\": \"2010-03-08\",\n" +
            "        \"BaselineStartDate\": \"2010-03-08\",\n" +
            "        \"EndDate\": \"2010-03-08\",\n" +
            "        \"Id\": 5,\n" +
            "        \"Name\": \"用户签字确认\",\n" +
            "        \"PercentDone\": 0,\n" +
            "        \"Priority\": 2,\n" +
            "        \"Responsible\": \"\",\n" +
            "        \"StartDate\": \"2010-03-08\",\n" +
            "        \"leaf\": true\n" +
            "    },\n" +
            "    {\n" +
            "        \"BaselineEndDate\": \"2010-03-18\",\n" +
            "        \"BaselineStartDate\": \"2010-03-08\",\n" +
            "        \"EndDate\": \"2010-03-18\",\n" +
            "        \"Id\": 6,\n" +
            "        \"Name\": \"实施阶段 2\",\n" +
            "        \"PercentDone\": 50,\n" +
            "        \"Priority\": 1,\n" +
            "        \"Responsible\": \"\",\n" +
            "        \"StartDate\": \"2010-03-08\",\n" +
            "        \"children\": [\n" +
            "            {\n" +
            "                \"BaselineEndDate\": \"2010-03-18\",\n" +
            "                \"BaselineStartDate\": \"2010-03-08\",\n" +
            "                \"EndDate\": \"2010-03-18\",\n" +
            "                \"Id\": 25,\n" +
            "                \"Name\": \"任务 3\",\n" +
            "                \"PercentDone\": 10,\n" +
            "                \"Priority\": 0,\n" +
            "                \"Responsible\": \"\",\n" +
            "                \"StartDate\": \"2010-03-08\",\n" +
            "                \"leaf\": true\n" +
            "            },\n" +
            "            {\n" +
            "                \"BaselineEndDate\": \"2010-03-18\",\n" +
            "                \"BaselineStartDate\": \"2010-03-08\",\n" +
            "                \"EndDate\": \"2010-03-18\",\n" +
            "                \"Id\": 26,\n" +
            "                \"Name\": \"任务 2\",\n" +
            "                \"ParentId\": 6,\n" +
            "                \"PercentDone\": 20,\n" +
            "                \"Priority\": 0,\n" +
            "                \"Responsible\": \"\",\n" +
            "                \"StartDate\": \"2010-03-08\",\n" +
            "                \"leaf\": true\n" +
            "            },\n" +
            "            {\n" +
            "                \"BaselineEndDate\": \"2010-03-18\",\n" +
            "                \"BaselineStartDate\": \"2010-03-08\",\n" +
            "                \"EndDate\": \"2010-03-18\",\n" +
            "                \"Id\": 27,\n" +
            "                \"Name\": \"任务 1\",\n" +
            "                \"ParentId\": 6,\n" +
            "                \"PercentDone\": 20,\n" +
            "                \"Priority\": 0,\n" +
            "                \"Responsible\": \"\",\n" +
            "                \"StartDate\": \"2010-03-08\",\n" +
            "                \"leaf\": true\n" +
            "            }\n" +
            "        ],\n" +
            "        \"expanded\": true\n" +
            "    },\n" +
            "    {\n" +
            "        \"BaselineEndDate\": \"2010-03-17\",\n" +
            "        \"BaselineStartDate\": \"2010-03-17\",\n" +
            "        \"EndDate\": \"2010-03-17\",\n" +
            "        \"Id\": 10,\n" +
            "        \"Name\": \"客户签字 2\",\n" +
            "        \"PercentDone\": 0,\n" +
            "        \"Priority\": 1,\n" +
            "        \"Responsible\": \"\",\n" +
            "        \"StartDate\": \"2010-03-17\",\n" +
            "        \"leaf\": true\n" +
            "    },\n" +
            "    {\n" +
            "        \"BaselineEndDate\": \"2010-05-08\",\n" +
            "        \"BaselineStartDate\": \"2010-03-22\",\n" +
            "        \"EndDate\": \"2010-05-08\",\n" +
            "        \"Id\": 8,\n" +
            "        \"Name\": \"生产阶段 1\",\n" +
            "        \"PercentDone\": 40,\n" +
            "        \"Priority\": 2,\n" +
            "        \"Responsible\": \"\",\n" +
            "        \"StartDate\": \"2010-03-22\",\n" +
            "        \"children\": [\n" +
            "            {\n" +
            "                \"BaselineEndDate\": \"2010-04-07\",\n" +
            "                \"BaselineStartDate\": \"2010-03-22\",\n" +
            "                \"EndDate\": \"2010-04-07\",\n" +
            "                \"Id\": 22,\n" +
            "                \"Name\": \"装配\",\n" +
            "                \"PercentDone\": 50,\n" +
            "                \"Priority\": 1,\n" +
            "                \"Responsible\": \"\",\n" +
            "                \"StartDate\": \"2010-03-22\",\n" +
            "                \"leaf\": true\n" +
            "            },\n" +
            "            {\n" +
            "                \"BaselineEndDate\": \"2010-04-21\",\n" +
            "                \"BaselineStartDate\": \"2010-04-06\",\n" +
            "                \"EndDate\": \"2010-04-21\",\n" +
            "                \"Id\": 23,\n" +
            "                \"Name\": \"加载\",\n" +
            "                \"PercentDone\": 20,\n" +
            "                \"Priority\": 2,\n" +
            "                \"Responsible\": \"\",\n" +
            "                \"StartDate\": \"2010-04-06\",\n" +
            "                \"leaf\": true\n" +
            "            },\n" +
            "            {\n" +
            "                \"BaselineEndDate\": \"2010-05-04\",\n" +
            "                \"BaselineStartDate\": \"2010-04-14\",\n" +
            "                \"EndDate\": \"2010-05-08\",\n" +
            "                \"Id\": 24,\n" +
            "                \"Name\": \"基本测试\",\n" +
            "                \"PercentDone\": 50,\n" +
            "                \"Priority\": 2,\n" +
            "                \"Responsible\": \"\",\n" +
            "                \"StartDate\": \"2010-04-22\",\n" +
            "                \"leaf\": true\n" +
            "            }\n" +
            "        ],\n" +
            "        \"expanded\": true\n" +
            "    },\n" +
            "    {\n" +
            "        \"BaselineEndDate\": \"2010-05-11\",\n" +
            "        \"BaselineStartDate\": \"2010-05-02\",\n" +
            "        \"EndDate\": \"2010-05-15\",\n" +
            "        \"Id\": 9,\n" +
            "        \"Name\": \"验收测试\",\n" +
            "        \"PercentDone\": 0,\n" +
            "        \"Priority\": 1,\n" +
            "        \"Responsible\": \"\",\n" +
            "        \"StartDate\": \"2010-05-07\",\n" +
            "        \"leaf\": true\n" +
            "    },\n" +
            "    {\n" +
            "        \"BaselineEndDate\": \"2010-05-11\",\n" +
            "        \"BaselineStartDate\": \"2010-05-11\",\n" +
            "        \"EndDate\": \"2010-05-15\",\n" +
            "        \"Id\": 7,\n" +
            "        \"Name\": \"交付\",\n" +
            "        \"PercentDone\": 40,\n" +
            "        \"Priority\": 1,\n" +
            "        \"Responsible\": \"\",\n" +
            "        \"StartDate\": \"2010-05-15\",\n" +
            "        \"leaf\": true\n" +
            "    }\n" +
            "]";

ok! 查看gson解析,生成更多详情请移步: http://blog.csdn.net/fengltxx/article/details/49902659

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值