zoukankan      html  css  js  c++  java
  • android断点续传实现方案之一

    思路:使用HttpGet添加Header头部,在头部里面设置读取的内容的范围,这样服务器发送的数据就不是从头开始发,客服端使用单线程以追加的方式打开一个文件,每次得到的数据都追加到文件中,这样就实现了文件的断点下载。

    服务器代码片段:

    //设置下载的数据位置XX字节到XX字节  
                Header header_size = new BasicHeader("Range", "bytes=" + size + "-"  
                        + fileSize);  
                request.addHeader(header_size);  
                response = client.execute(request); 
    //设置下载的数据位置XX字节到XX字节  
                Header header_size = new BasicHeader("Range", "bytes=" + size + "-"  
                        );  
                request.addHeader(header_size);  
                response = client.execute(request); 

    客户端代码片段:

    mStream = new FileOutputStream(state.mFilename, true);
    //小技巧 以追加的方式打开文件输出流,就可以实现断点下载,true为追加,false为不追加直接替换掉源文件的内容
  • 相关阅读:
    delphi try except语句 和 try finally语句用法以及区别
    正向代理与反向代理(转)
    kbmMW功能
    problem 202,263、232、21、231
    leetcode day8
    leetcode day7
    VS2013 opencv2.4.8
    web 前端routine
    leetcode day6
    leetcode day5
  • 原文地址:https://www.cnblogs.com/xushihai/p/4600887.html
Copyright © 2011-2022 走看看