gson解析json

例1(json數據): java

String sJson = "[{'id':1,'pId':0,'name':'請求參數','type':1,'required':1,'ordered':'1','mark':'根據節點'},{'id':1455676993000,'pId':1,'name':'Student','type':'void','required':'0','ordered':'','mark':'','value':''},{'id':1455677024000,'pId':1455676993000,'name':'id','type':'String','required':'0','ordered':'','mark':'','value':'0'},{'id':1455677058000,'pId':1455676993000,'name':'name','type':'String','required':'1','ordered':'','mark':'','value':'張三'},{'id':1455677115000,'pId':1,'name':'id','type':'String','required':'1','ordered':'','mark':'','value':''}]";
  Gson gson = new Gson();
        JsonParser parser = new JsonParser();
        JsonArray jsonArray = parser.parse(sJson).getAsJsonArray();
        
        for (int i = 0; i < jsonArray.size(); i++) {
            JsonElement el = jsonArray.get(i);
            ShareParam param = gson.fromJson(el, ShareParam.class);
            System.out.println(param);
        }

例2(map對象): json

String json = "{start: 0, pageCount: 2, dataList: [{\"STRPRODUCTCODE\":\"DWJ100\",\"STRVERSIONXZTEXT\":\"初始安裝包\",\"STRPRODUCTNAME\":\"對外經貿查詢系統\",\"STRVERSIONTYPE\":\"10\",\"STRVERSIONID\":\"V1                                      \",\"STRVERSIONCODE\":\"1.0.2.1018\",\"LINE_NUM\":1,\"STRVERSIONXZ\":\"10\",\"LIMIT\":1,\"NUMSHOWORDER\":1,\"STRVERSIONLOG\":\"修復1個bug,增長2個功能\",\"STRVERSIONTYPETEXT\":\"標準版\",\"DATRELEASEDATE\":\"2013-9-28 10:47:26\",\"STRVERSIONFY\":\"10萬人民幣\",\"STRSUPPORTOS\":\"Windows 2003/Windows 2008\",\"STRDELFLG\":\"0\"}" +
                ",{\"STRPRODUCTCODE\":\"DWJ100\",\"STRVERSIONXZTEXT\":\"初始安裝包\",\"STRPRODUCTNAME\":\"對外經貿查詢系統\",\"STRVERSIONTYPE\":\"10\",\"STRVERSIONID\":\"V1                                      \",\"STRVERSIONCODE\":\"1.0.2.1018\",\"LINE_NUM\":1,\"STRVERSIONXZ\":\"10\",\"LIMIT\":1,\"NUMSHOWORDER\":1,\"STRVERSIONLOG\":\"修復1個bug,增長2個功能\",\"STRVERSIONTYPETEXT\":\"標準版\",\"DATRELEASEDATE\":\"2013-9-28 10:47:26\",\"STRVERSIONFY\":\"10萬人民幣\",\"STRSUPPORTOS\":\"Windows 2003/Windows 2008\",\"STRDELFLG\":\"0\"}" +
                "]}";
        Gson gson = new Gson();
        JsonParser parser = new JsonParser();
        JsonObject jsonObject = parser.parse(json).getAsJsonObject();
        JsonArray jsonArray = jsonObject.getAsJsonArray("dataList");
        
        Type type = new TypeToken<Map<String,String>>() {}.getType();
        
        List<Map<String,String>> list = new ArrayList<Map<String,String>>();
        
        for (int i = 0; i < jsonArray.size(); i++) {
            JsonElement el = jsonArray.get(i);
            Map<String,String> tmp = gson.fromJson(el, type);
            list.add(tmp);
            System.out.println(tmp.get("STRPRODUCTCODE"));
        }
        jsonObject.remove("dataList");
        jsonObject.add("dataList", parser.parse(gson.toJson(list)).getAsJsonArray());
        System.out.println(gson.toJson(jsonObject));
相關文章
相關標籤/搜索