欢迎光临
我的个人博客网站

ASP .NET MVC使用ZipFile打包下载

asp.net MVC 的下载方法

引用using Ionic.Zip;

ASP .NET MVC使用ZipFile打包下载ASP .NET MVC使用ZipFile打包下载

  <tr>                 <td><a href="UploadDownload">下载</a></td> </tr>

View

ASP .NET MVC使用ZipFile打包下载ASP .NET MVC使用ZipFile打包下载

 //下载zip文件         public ActionResult Download()         {             int count = 0;             string ProcessInstanceID = "1";             if (!string.IsNullOrEmpty(ProcessInstanceID))             {                 string path = Server.MapPath("~/省略/"); //需要压缩的照片                 string zipDownLoad = Server.MapPath("~/省略/");                 string filePath = zipDownLoad + "KPI_" + DateTime.Now.ToString("yyyyMMddHHmmssfff") + ".zip"; //保存文件路径+文件名称                 DataTable Dt = new DataTable();                 Dt.Columns.Add("FileName", System.Type.GetType("System.String"));                 Dt.Rows.Add(new object[] { " 图片.PNG" });                  using (ZipFile zip = new ZipFile(System.Text.Encoding.UTF8))                 {                     if (Dt != null && Dt.Rows.Count > 0)                     {                         foreach (DataRow filedr in Dt.Rows)                         {                             if (filedr["FileName"] != DBNull.Value && filedr["FileName"] != null && !string.IsNullOrEmpty(filedr["FileName"].ToString()))                             {                                 zip.AddFile(path + filedr["FileName"].ToString(), ""); //第二个参数是去除嵌套文件                              }                         }                     }                     else                     {                         return Content("<script>alert('无数据');location.href='/SalesTake/SalesIndex'</script>");                      }                     zip.Save(filePath);                     //下载                     if (System.IO.File.Exists(filePath))                     {                         FileInfo file = new FileInfo(filePath);                         Response.ContentEncoding = System.Text.Encoding.UTF8; //解决中文乱码                         Response.AddHeader("Content-Disposition", "attachment; filename=" + Server.UrlEncode(file.Name)); //解决中文文件名乱码                             Response.AddHeader("Content-length", file.Length.ToString());                         Response.ContentType = "appliction/octet-stream";                         Response.WriteFile(file.FullName);                         Response.Flush();                         Response.End();                         count = 1;                      }                 }             }             return View();         }

Controller

 

赞(0) 打赏
未经允许不得转载:张拓的天空 » ASP .NET MVC使用ZipFile打包下载
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

专业的IT技术经验分享 更专业 更方便

联系我们本站主机

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏