1

我使用以下代码将格式正确的字符串转换为 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 解决这个问题的任何帮助都会对我有很大帮助。谢谢你

4

1 回答 1

3

让我们取你的 json 的前几个字符

 "{ \"poi\":[\u000d\u000a  
 ^  ^    ^   ^^^^^^
 |  |    |      |-----------> not sure about all this
 |  |    -------------------> not acceptable in json
 |  ------------------------> not acceptable in json
 ---------------------------> not acceptable in json

您从该网站返回的不是有效的根 json。如果您可以控制它,请修复您的来源。或者使用 String 实用方法来替换这些字符。

于 2013-08-01T20:51:23.393 回答