从字符串JSON数据获取嵌套的JSON数据

时间:2016-11-17 08:50:59

标签: java arrays json nested

我正在尝试使用JSONObject和JSONArray从字符串JSON数据中获取嵌套的JSON数据。代码正在编译而没有任何错误,但结果是 Null 而不是相关的字符串。如果有任何替代方法来嵌套JSON字符串请建议。

我的代码:

  import java.io.*;
  import java.net.*
  import org.json.simple.JSONObject;
  import org.json.simple.parser.JSONParser;

  public class A4 {
   public static void main(String[] args){
    String out,out1= null;
    try{
        URL a=new URL("URL");
        HttpURLConnection b=(HttpURLConnection) a.openConnection();
        b.setRequestMethod("GET");
        b.setRequestProperty("Accept", "application/json");
        BufferedReader c=new BufferedReader(new InputStreamReader(b.getInputStream()));
        StringBuilder sb=new StringBuilder();
        while((out=c.readLine())!=null){
            sb.append(out);
            out1=sb.toString();
            }

       c.close();
       b.disconnect();
    }catch (Exception e){
           e.printStackTrace();
       return;
    }
    JSONParser parser = new JSONParser();
    try{
        Object obj = parser.parse(out1);
            JSONObject jsonObject = (JSONObject) obj;
            String name = (String) jsonObject.get("Name");
        System.out.println(name);
    } 
    catch (Exception e) {
        e.printStackTrace();
    }
    }
 }

2 个答案:

答案 0 :(得分:1)

尝试下面的代码,我认为它应该适合你:

while((out=c.readLine())!=null){
    sb=sb.append(out);
}
out1=sb.toString();

请告诉我这是否适合您?

答案 1 :(得分:0)

您可以直接使用以下代码

,而不是使用JSONParser来获取JSONObject
JSONObject jsonObj = new JSONObject(out1)