zoukankan      html  css  js  c++  java
  • 远程下载文件源码

    /********** 小文件************/
    Response.ClearContent();
    Response.ClearHeaders();
    Response.ContentType = "application/octet-stream";
    Response.AddHeader("Content-Disposition", "attachment; filename=logo.gif");
    System.Net.HttpWebRequest request = (System.Net.HttpWebRequest)System.Net.WebRequest.Create("http://dotnet.aspx.cc/Images/logoSite.gif");
    System.Net.HttpWebResponse response = (System.Net.HttpWebResponse)request.GetResponse();
    Stream stream = response.GetResponseStream();
    byte[] bytes = new byte[response.ContentLength];
    stream.Read(bytes, 0, Convert.ToInt32(response.ContentLength));
    HttpContext.Current.Response.BinaryWrite(bytes);
    Response.Flush();
    Response.Close();
    
    /********** 大文件************/
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.xljsf.com//admin/UploadFile/20076222121122.wma");
    request.Timeout = 150000;
    
    HttpWebResponse response = (HttpWebResponse)request.GetResponse();
    Stream stream = response.GetResponseStream();
    
    Response.Clear();
    Response.ContentType = "application/octet-stream";
    Response.AddHeader("Content-Disposition", "attachment;filename=20076222121122.wma");
    
    int buffer = 1024;
    while (true)
    {
      byte[] bytes = new byte[buffer];
      int alreadyRead = stream.Read(bytes, 0, buffer);
      if (alreadyRead == 0) break;
      if (alreadyRead == buffer)
        Response.BinaryWrite(bytes);
      else
      {
        byte[] lastBytes = new byte[alreadyRead];
        for (int i = 0; i < alreadyRead; i++)
          lastBytes[i] = bytes[i];
        Response.BinaryWrite(lastBytes);
      }
    }
    Response.End();
    
     
    

      

  • 相关阅读:
    打印机无法打印文件
    .Net com组件操作excel(不建议采用Com组件操作excel)
    Zebra
    Map遍历方式
    PageHelper原理
    MySQL8.0新特性
    算法_插入排序
    贝叶斯定理
    二叉树学习笔记
    Java校验时间段重叠
  • 原文地址:https://www.cnblogs.com/youngerliu/p/2384195.html
Copyright © 2011-2022 走看看