HttpGet无法识别网址

时间:2011-04-22 18:49:29

标签: java android html syntax apache-commons-httpclient

所以我在不同的旧帖子中使用下面的代码,但是有一部分出现问题,HttpGet request = new HttpGet(url);的行不起作用。在网址中我添加了类似www.stackoverflow.com的内容,但是这一部分不会让代码编译。我基本上试图从HTML网站上写文字。完整的代码:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    HttpClient client = new DefaultHttpClient();
    HttpGet request = new HttpGet(www.stackoverflow.com);
    HttpResponse response = client.execute(request);

    String html = "Toronto-GTA";
    InputStream in = response.getEntity().getContent();
    BufferedReader reader = new BufferedReader(new InputStreamReader(in));
    StringBuilder str = new StringBuilder();
    String line = null;
    while((line = reader.readLine()) != null)
    {
        str.append(line);
    }
    in.close();
    html = str.toString();
}

4 个答案:

答案 0 :(得分:3)

HTTPGet需要URL或字符串,因此请尝试将您的请求行更改为:

HttpGet request = new HttpGet("http://www.stackoverflow.com/");

答案 1 :(得分:2)

使用以下形式的字符串:

[scheme:][//authority][path][?query][#fragment]

即。 "http://www.stackoverflow.com"

答案 2 :(得分:0)

试试这个:HttpGet request = new HttpGet("www.stackoverflow.com");

答案 3 :(得分:0)

使用try和catch语句添加上面给出的答案,以捕获异常。

try{
HttpClient client = new DefaultHttpClient();
    HttpGet request = new HttpGet("www.stackoverflow.com");
    HttpResponse response = client.execute(request);
    InputStream in = response.getEntity().getContent();
    BufferedReader reader = new BufferedReader(new InputStreamReader(in));
    StringBuilder str = new StringBuilder();
    String line, html = null;
    while((line = reader.readLine()) != null)
    {
        str.append(line);
    }
    in.close();
    html = str.toString();
}
catch(Exception e){
//Do something here like printing the stacktrace
}