首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

关于下载网络文件的有关问题

2012-01-24 
关于下载网络文件的问题!小弟再次请问我的以下代码为什么不能下载URL的内容,急?privatevoidFileDownload(s

关于下载网络文件的问题!
小弟再次请问我的以下代码为什么不能下载URL的内容,急?
  private   void   FileDownload(string   FullFileName)
                {
                        System.IO.Stream   iStream   =   null;

                        //   Buffer   to   read   10K   bytes   in   chunk:
                        byte[]   buffer   =   new   Byte[10000];

                        //   Length   of   the   file:
                        int   length;

                        //   Total   bytes   to   read:
                        long   dataToRead;

                        //   Identify   the   file   to   download   including   its   path.
                        string   filepath   =   FullFileName.ToString().Substring(FullFileName.LastIndexOf( "/ ")   +   1);

                        //   Identify   the   file   name.
                        string   filename   =   System.IO.Path.GetFileName(filepath);

                        try
                        {
                                //   Open   the   file.
                                iStream   =   new   System.IO.FileStream(filepath,   System.IO.FileMode.Open,
                                                        System.IO.FileAccess.Read,   System.IO.FileShare.Read);


                                //   Total   bytes   to   read:
                                dataToRead   =   iStream.Length;

                                Response.ContentType   =   "application/octet-stream ";
                                Response.AddHeader( "Content-Disposition ",   "attachment;   filename= "   +   filename);

                                //   Read   the   bytes.
                                while   (dataToRead   >   0)


                                {
                                        //   Verify   that   the   client   is   connected.
                                        if   (Response.IsClientConnected)
                                        {
                                                //   Read   the   data   in   buffer.
                                                length   =   iStream.Read(buffer,   0,   10000);

                                                //   Write   the   data   to   the   current   output   stream.
                                                Response.OutputStream.Write(buffer,   0,   length);

                                                //   Flush   the   data   to   the   HTML   output.
                                                Response.Flush();

                                                buffer   =   new   Byte[10000];
                                                dataToRead   =   dataToRead   -   length;
                                        }
                                        else
                                        {
                                                //prevent   infinite   loop   if   user   disconnects
                                                dataToRead   =   -1;
                                        }
                                }


                        }
                        catch   (Exception   ex)
                        {
                                //   Trap   the   error,   if   any.
                                Response.Write( "Error   :   "   +   ex.Message);
                        }
                        finally
                        {
                                if   (iStream   !=   null)
                                {
                                        //Close   the   file.
                                        iStream.Close();
                                }
                        }

                }


[解决办法]
帮顶
[解决办法]
郁闷 我想问问你 这怎么实现 下载啊? 这分明 一段 物理文件流的 读取啊 缺少 http 的请求吧~

热点排行