【问题标题】:how to display that how much data we have downloaded如何显示我们下载了多少数据
【发布时间】:2011-05-30 12:26:56
【问题描述】:

我是 android 的新手。我正在制作一个应用程序,我想在其中显示从服务器下载的文件的大小。 有什么方法可以显示我们下载了多少? 拜托

如果有人可以帮忙。

谢谢

【问题讨论】:

  • 请尽量使您的问题更具体。没有方法displayHowMuchDownloadedSofar()。你被困在哪里了??

标签: android download filesize


【解决方案1】:

我希望您将从服务器获取的数据存储在任何特定位置的文件中。所以创建一个文件 passinb 位置的绝对路径。使用 length() 方法获取文件大小。 这样你就可以知道你从服务器下载了多少数据

File f = new File("absolutepath");
    if(f.exists()){
    f.length()
    }

谢谢 迪帕克

【讨论】:

    【解决方案2】:

    你好。您可以在异步任务中使用下面的代码或首选代码,在onProgressUpdate 方法中您可以检查输入源变量的大小。

    URL u = new URL("http://www.java2s.com/binary.dat");
        URLConnection uc = u.openConnection();
        String contentType = uc.getContentType();
        int contentLength = uc.getContentLength();
        if (contentType.startsWith("text/") || contentLength == -1) {
          throw new IOException("This is not a binary file.");
        }
        InputStream raw = uc.getInputStream();
        InputStream in = new BufferedInputStream(raw);
        byte[] data = new byte[contentLength];
        int bytesRead = 0;
        int offset = 0;
        while (offset < contentLength) {
          bytesRead = in.read(data, offset, data.length - offset);
          if (bytesRead == -1)
            break;
          offset += bytesRead;
        }
        in.close();
    

    【讨论】:

      【解决方案3】:

      只需阅读下面的文档,其中解释了异步任务。在其进度更新中,您可以检查输入源文件的大小。 如果您想向 UI 显示此内容,请使用进度对话框。

      ProgressDialog

      【讨论】:

        猜你喜欢
        • 2015-07-27
        • 1970-01-01
        • 1970-01-01
        • 2017-02-12
        • 2018-10-04
        • 2022-11-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多