3

我想用指定的下载时间在 java 中下载 URL 内容。例如:我希望 www.yahoo.com 的最大下载超时为 10 秒。如果下载时间超过 10 秒,则应该抛出错误。我已经编写了用于打开连接并下载全部内容的代码。但是如何设置下载超时?这是代码片段:

        StringBuilder text = new StringBuilder();

        urlconn = (HttpURLConnection)url.openConnection();
        urlconn.setConnectTimeout(100000);
      //urlconn.setInstanceFollowRedirects(false);
        urlconn.setRequestMethod("GET");
        urlconn.connect();
        buf = new BufferedReader(new InputStreamReader(urlconn.getInputStream())); 
        while((line = buf.readLine()) != null)
            text.append(line);
        System.out.println(url + "=> "+ urlconn.getResponseCode());
4

2 回答 2

4

你可以设置它URLConnection#setReadTimeout()

urlconn.setReadTimeout(10000); // 10 sec
// ...
于 2011-05-31T04:02:53.817 回答
2

使用URLConnection.setReadTimeOut().

于 2011-05-31T04:05:42.483 回答