我正在尝试使用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();
}
}
}
答案 0 :(得分:1)
尝试下面的代码,我认为它应该适合你:
while((out=c.readLine())!=null){
sb=sb.append(out);
}
out1=sb.toString();
请告诉我这是否适合您?
答案 1 :(得分:0)
您可以直接使用以下代码
,而不是使用JSONParser来获取JSONObjectJSONObject jsonObj = new JSONObject(out1)