例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));