使用Java的Web内容与浏览器中的内容不同

时间:2011-05-16 14:33:32

标签: java url bufferedreader freebase

我从网上读取BufferedReader时遇到了奇怪的问题。

URL内容在浏览器中与粘贴的Java代码不同。 在使用Java获取的内容中,第一个元素的结果在浏览器中是空的,而不是。

我的代码:

public static void main(String[] args) {

    try {

        String url = "https://api.freebase.com/api/service/mqlread?queries={\"q1\":{\"query\":[{\"name\":\"Pulp Fiction\",\"*\":null,\"type\":\"/film/film\"}]},\"q3\":{\"query\":[{\"name\":\"Portal\",\"*\":null,\"type\":\"/cvg/computer_videogame\"}]}}";

        URL u = new URL(url);
        System.out.println(u.toString());
        URLConnection urlConn = u.openConnection();
        InputStreamReader is = new InputStreamReader(urlConn.getInputStream());
        BufferedReader br = new BufferedReader(is);
        String line = null;
        String data = "";

        while ((line = br.readLine()) != null) {
            data += line + "\n";
        }
        br.close();

        System.out.println(data);
    } catch (Exception ex) {
        System.err.println(ex);
    }
}
编辑:啊。弄清楚了。 URL中没有空格字符。只需用%20替换它们。

0 个答案:

没有答案