2014-12-04 79 views
0

我有一个servlet发出的JSONArray,就像一个REST API。我跟随了几个链接并试图解析这个URL。我能够接收URL并从我的客户端servlet打印出来,但我该如何解析它? 到目前为止,这是我无法从java解析jsonarray URL

PrintWriter out = response.getWriter(); 
     response.setContentType("application/json"); 
     response.setHeader("Cache-Control", "nocache"); 
     response.setCharacterEncoding("utf-8"); 

     String out1 = new Scanner(new URL("http://localhost:8080/myproject/servletone").openStream(), "UTF-8").useDelimiter("\\A").next(); 
      out.print(out1); 

输出是一个JSON数组如下,

[{"name":"abc","age":"80","gender":"male"},{"name":"hello","age":"45","gender":"‌​female"}] 

我需要能够访问每个单个元素的姓名,年龄,性别在各的阵列。

+0

你想解析在Java或浏览器?试试这个解决方案http://stackoverflow.com/questions/2591098/how-to-parse-json-in-java – kamoor 2014-12-04 17:47:20

+0

@ kamoor1982,谢谢你的回复。但我已经知道如何解析java中的json。我的问题更多的是,如何将URL中的json内容转换为JSONArray格式,这样我就可以对其进行深入研究。 – IAMTubby 2014-12-04 20:33:30

回答

0

我假设out1有你在问题中发布的字符串。下面的代码应该工作,然后,

JSONArray array = new JSONArray(ou1); 
System.out.println(((JSONObject)array.get(0)).get("name"));