当前位置:编程学习 > C#/ASP.NET >>

文件下载问题,忘指点,谢谢

String dlDir = "downloadfiles/";
        String strFileName = Request.QueryString("FileName");
        String path = Server.MapPath(dlDir + Request.QueryString("FileName"));
        //string path = File1.Value;
        FileInfo toDownload = new FileInfo(path);
        if (toDownload.Exists)
        {
            int ChunkSize = 10000;
            Byte[] buffer = new Byte[ChunkSize];
            Response.Clear();
            using (Stream iStream = File.OpenRead(path))
            {
                long dataLengthToRead = iStream.Length;
                //Response.ContentType = "application/octet-stream";
                //Response.AddHeader("Content-Disposition", "attachment; filename=" + toDownload.Name);
                Response.ContentType = "application/x-zip-compressed";
                Response.AddHeader("Content-Type","RMVB");
                Response.AddHeader("Content-Disposition", "attachment; filename=" + toDownload.Name);
                Response.AppendHeader("Accept-Header", "bytes");
                Response.AppendHeader("ETag", "58afcc3dae87d52:3173");

                while (dataLengthToRead > 0 && Response.IsClientConnected)
                {
                    int lengthRead = iStream.Read(buffer, 0, ChunkSize);
                    Response.OutputStream.Write(buffer, 0, lengthRead);
                    Response.Flush();
                    dataLengthToRead = dataLengthToRead - lengthRead;
                }
            }
            Response.End();
        }
        else
        {
            //BindFileDataToGrid("Name");
            Response.Write("文件不存在!");
        }

为什么这段代码不能下载.rmvb等电影文件?忘指点,谢谢 --------------------编程问答-------------------- 顶起,关注。 --------------------编程问答-------------------- Request.QueryString("FileName"); 
写错了,应该是中括号,
其它代码没什么问题,我测试了可以下载400兆的电影

会不会是你的服务器内存偏小?导致文件无法载入内存?
报什么错误? --------------------编程问答-------------------- 刚 看你的题目 以为你要指点别人。。。 --------------------编程问答-------------------- 没看出什么问题
只是不能下载.rmvb等电影文件?其他文件都行吗?
下载的文件有多大呢? --------------------编程问答-------------------- 对呀,其它的文件都没问题(如.txt,图片都可以),只是rmvb不行,我电脑是一G内存,应该不会小吧 --------------------编程问答-------------------- 对了,我下载的.rmvb文件是416M,有影响吗? --------------------编程问答-------------------- 只要是视屏文件(如.rmvb,.avi)点下载,就变成了---Internet Explorer 无法显示该网页,为什么呢,忘大家多多指点,谢谢!
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,