23

我想知道一些下载的进度。
当我从互联网上获取一些资源时,如下所示:

        String myFeed = request.getURI().toString();
        URL url = new URL(myFeed);
        URLConnection connection = url.openConnection();
        HttpURLConnection httpConnection = (HttpURLConnection) connection;
        int responseCode = httpConnection.getResponseCode();
        if (responseCode == HttpURLConnection.HTTP_OK) {

            InputStream in = httpConnection.getInputStream();
            // Process the input stream
        }

当“InputStream in = httpConnection.getInputStream();” 被调用,
文件的所有内容被一次下载。

如果我使用:

        htttpResponse = httpClient.execute(httpRequestBase);

问题是一样的。

如何检测下载的实际进度?

谢谢你们!

4

1 回答 1

9

我想这已经在这里得到了回答

简而言之:使用应该在标题字段中的“Content-Length”。

编辑:对不起,我没有准确回答这个问题。基本上,一旦您知道预期的总内容长度,您就可以跟踪收到的数据量并计算完成百分比。

另请参阅:如何创建下载管理器

于 2010-01-20T11:25:36.510 回答