ottorz 2016-05-18 01:41 采纳率: 0%
浏览 1209
已结题

asp.net 下载pdf ,下载后的大小与实际大小不一样

代码是这样子的,从数据库读取文件的长度没问题,但浏览器下载后总是不一样?请问会是什么原因?

 SqlDataReader dr = cmd.ExecuteReader(System.Data.CommandBehavior.SequentialAccess);
                    if (dr.Read())
                    {
                        string filename = dc + " + " + dr["filename"].ToString();
                        int length = int.Parse(dr["leng"].ToString());
                        Context.Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(filename, System.Text.Encoding.UTF8));
                        Context.Response.AddHeader("Content-Transfer-Encoding", "binary");
                        //if (filename.EndsWith("pdf"))
                        //{
                        //    Context.Response.ContentType = "application/pdf";
                        //}
                        //else
                        //    Context.Response.ContentType = "application/x-msdownload";//"application/octet-stream"application/x-msdownload;
                        Context.Response.ContentType = "application/octet-stream";


                        int bufferSize = 1024000;

                         int bytesRead;
                         long readFrom = 0;
                         do
                         {
                             byte[] bytes = new byte[bufferSize];
                             bytesRead = (int)dr.GetBytes(3, readFrom, bytes, 0, bufferSize);

                             //Response.BinaryWrite(bytes);
                             Response.OutputStream.Write(bytes, 0, bytesRead);
                             Response.Flush();
                             readFrom += bufferSize;
                         } while (bytesRead == bufferSize);
  • 写回答

1条回答 默认 最新

  • 斯洛文尼亚旅游 2016-05-18 02:01
    关注

    加content-length响应头试试。。

     Response.AddHeader("content-length",length.ToString());
    
    评论

报告相同问题?

悬赏问题

  • ¥15 pnpm 下载element-plus
  • ¥15 解决编写PyDracula时遇到的问题
  • ¥15 有没有人能解决下这个问题吗,本人不会编程
  • ¥15 plotBAPC画图出错
  • ¥30 关于#opencv#的问题:使用大疆无人机拍摄水稻田间图像,拼接成tif图片,用什么方法可以识别并框选出水稻作物行
  • ¥15 Python卡尔曼滤波融合
  • ¥20 iOS绕地区网络检测
  • ¥15 python验证码滑块图像识别
  • ¥15 根据背景及设计要求撰写设计报告
  • ¥20 能提供一下思路或者代码吗