如何在JAVA中解析此JSON响应
发布时间:2020-12-15 02:52:15 所属栏目:Java 来源:网络整理
导读:我想解析这些Json响应: {"MyResponse": { "count": 3,"listTsm": [{ "id": "b90c6218-73c8-30bd-b532-5ccf435da766","simpleid": 1,"name": "vignesh1" },{ "id": "b90c6218-73c8-30bd-b532-5ccf435da766","simpleid": 2,"name": "vignesh2" },"simpleid":
我想解析这些Json响应:
{ "MyResponse": { "count": 3,"listTsm": [{ "id": "b90c6218-73c8-30bd-b532-5ccf435da766","simpleid": 1,"name": "vignesh1" },{ "id": "b90c6218-73c8-30bd-b532-5ccf435da766","simpleid": 2,"name": "vignesh2" },"simpleid": 3,"name": "vignesh3" }] } } 我尝试使用SIMPLE JSON解析器,但这对我不起作用: Object obj = parser.parse(resp); JSONObject jsonObject = (JSONObject) obj; JSONArray response = (JSONArray) jsonObject.get("MyResponse"); //JSONArray arr=new JSONArray(yourJSONresponse); ArrayList<String> list = new ArrayList<String>(); for(int i=0; i<response.size(); i++){ list.add(response.get(i)("name")); } 解决方法public static void main(String[] args) throws JSONException { String jsonString = "{" + " "MyResponse": {" + " "count": 3," + " "listTsm": [{" + " "id": "b90c6218-73c8-30bd-b532-5ccf435da766"," + " "simpleid": 1," + " "name": "vignesh1"" + " }," + " {" + " "id": "b90c6218-73c8-30bd-b532-5ccf435da766"," + " "simpleid": 2," + " "name": "vignesh2"" + " }," + " "simpleid": 3," + " "name": "vignesh3"" + " }]" + " }" + "}"; JSONObject jsonObject = new JSONObject(jsonString); JSONObject myResponse = jsonObject.getJSONObject("MyResponse"); JSONArray tsmresponse = (JSONArray) myResponse.get("listTsm"); ArrayList<String> list = new ArrayList<String>(); for(int i=0; i<tsmresponse.length(); i++){ list.add(tsmresponse.getJSONObject(i).getString("name")); } System.out.println(list); } } 输出: [vignesh1,vignesh2,vignesh3] 评论:我没有添加验证 [编辑] 加载json String的其他方法 JSONObject obj= new JSONObject(); JSONObject jsonObject = obj.fromObject(jsonString); .... (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |