ASP.Net MVC_DotNetZip简单使用方法,解决文件压缩的问题

你瞧,你绿油油的小草从土里钻了出来。嫩嫩的,它在饱受严冬的考验之后,在严冬它聚集着力量,想在春天到来时,将力量释放出来,它展示出了生命力的顽强,也展现出自己对春天的渴望!在万物最需要水的时候,春雨悄悄地轻轻地到来了。生怕踩到了这些顽强的小精西。春雨打在小草的脸上,轻轻地。小草贪婪的吮吸着春雨,一会儿,春风也来 "凑热闹 "了,春风来为柳树 "梳头 "来了,春风也轻轻地,怕自己的鲁莽把柳树的头发弄断了。

准备工作:

在vs工具栏中找到NuGet


下载DotNetZip

现在就可以使用DotNetZip强大的类库了,在这里我给出一些简单的使用。

public ActionResult Export()
    {
      using (ZipFile zip = new ZipFile(System.Text.Encoding.Default))
      {
        zip.AddFile(Server.MapPath("~/Img/2.png"), "Images");
        zip.AddFile(Server.MapPath("~/File/1.pdf"), "Files");
        zip.Save(Server.MapPath("~/ZIP/Test.zip"));
        return File(Server.MapPath("~/ZIP/Test.zip"),
                      "application/zip", "sample.zip");
      }
    }

其中“System.Text.Encoding.Default”是解决中文乱码问题。

从字面上就可以理解zip.AddFile就是从指定路径把文件加入到zip中,后面的参数“Images"和“Files”就是说解压后看到了两个目录。

zip.Sava就是保存zip文件到某个目录。

解压后

要是文件都在一个目录的话还可以这样:

public ActionResult Export()
    {
      using (ZipFile zip = new ZipFile())
      {
        zip.AddDirectory(Server.MapPath("~/Img/"));
        zip.Save(Server.MapPath("~/ZIP/Test.zip"));
        return File(Server.MapPath("~/ZIP/Test.zip"),
                      "application/zip", "sample.zip");
      }
    }

下面是加密

public ActionResult Export()
    {
      using (ZipFile zip = new ZipFile())
      {
        zip.Password="123";
        zip.AddDirectory(Server.MapPath("~/Img/"));
        zip.Save(Server.MapPath("~/ZIP/Test.zip"));
        return File(Server.MapPath("~/ZIP/Test.zip"),
                      "application/zip", "sample.zip");
      }
    }

以上这篇ASP.Net MVC_DotNetZip简单使用方法,解决文件压缩的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

您可能有感兴趣的文章
ASP.NET Core文件压缩常见使用误区(最佳实践)

ASP.NET轻量级MVC框架Nancy的基本用法

使用grpcui测试ASP.NET core的gRPC服务

ASP.NET Core中的对象池介绍

asp.net中MVC的处理流程详解