我在Java中使用以下代码将格式正确的字符串转换为JSONObject:
public void getStatus(){
String status = "";
try{
String line;
StringBuilder result = new StringBuilder("");
HttpURLConnection conn;
URL url;
url = new URL("http://bromio.com.mx/explore/PointOfInterestService.svc/GetData");
BufferedReader rd;
conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
while ((line = rd.readLine()) != null) {
result.append(line);
}
rd.close();
Log.d("JSON: ", result.toString());
JSONObject jsonObject = new JSONObject(result.toString());
}catch (Exception e){
e.printStackTrace();
}
}
但这引发了异常,看来我无法将特定的字符串转换为JSONObject。
JSON可以在此页面中显示:(太大,无法显示!)http://bromio.com.mx/explore/PointOfInterestService.svc/GetData
解决这个问题的任何帮助都会对我有很大帮助。谢谢
最佳答案
让我们以json的前几个字符为例
"{ \"poi\":[\u000d\u000a
^ ^ ^ ^^^^^^
| | | |-----------> not sure about all this
| | -------------------> not acceptable in json
| ------------------------> not acceptable in json
---------------------------> not acceptable in json
您从该网站获得的内容不是有效的root json。如果您可以控制源,请修复它。或使用String实用程序方法替换那些字符。
关于java - 无法从String解析为JSONObject,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18004179/