2018年6月8日 星期五

[研究][ASP.NET]用 .NET 4.5 的 ZipFile 類別做壓縮、解壓縮

[研究][ASP.NET]用 .NET 4.5 的 ZipFile 類別做壓縮、解壓縮

2018-06-08

使用微軟 .NET Framework 內建的功能用來做壓縮和解壓縮。

如何:壓縮與解壓縮檔案
http://msdn.microsoft.com/zh-tw/library/ms404280.aspx

ZipFile 類別
http://msdn.microsoft.com/zh-tw/library/system.io.compression.zipfile.aspx

首先要呼叫該方法的專案必須至少為.NET4.5 版本  (4.7.2, 4.7.1, 4.7, 4.6.2, 4.6.1, 4.6, 4.5.2, 4.5.1, 4.5)。
接著加入參考 System.IO.Compression.FileSystem.dll 檔
並引用命名空間 System.IO.Compression


存放 System.IO.Compression.FileSystem.dll 的目錄
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5.1
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5.2
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1













Default.aspx.cs 內容

using System;
using System.IO.Compression;

namespace WebApplication1
{
    public partial class Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            string startPath = Server.MapPath("/Zip");
            string zipPath = Server.MapPath("/Download/") + "test.zip";
            string extractPath = Server.MapPath("/UnZip");

            // 壓縮目錄中檔案
            ZipFile.CreateFromDirectory(startPath, zipPath);
            
            // 解壓縮
            ZipFile.ExtractToDirectory(zipPath, extractPath);
        }
    }
}

(完)

相關

[研究][ASP.NET]用  .NET 4.5做壓縮、解壓縮
http://shaurong.blogspot.com/2018/06/aspnet-net-40.html

[研究][ASP.NET]用 SharpZipLib 0.86.0 做壓縮、解壓縮 (NuGet 安裝)
http://shaurong.blogspot.com/2018/06/aspnet-sharpziplib-0860-nuget.html

[研究] [C#] 用 SharpZip 0.86.0 做壓縮、解壓縮
http://shaurong.blogspot.com/2016/12/c-sharpzip.html

[研究] [C#] 用 DotNetZip Library v1.9.1.8 解壓縮程式庫
http://shaurong.blogspot.com/2016/12/dotnetzip-library.html

沒有留言:

張貼留言