ZipFile 類別

定義

提供建立、解壓及開啟壓縮壓縮檔的靜態方法。

public ref class ZipFile abstract sealed
public static class ZipFile
type ZipFile = class
Public Class ZipFile
繼承
ZipFile

範例

這個範例展示了如何使用 類別建立並解壓 ZipFile 壓縮壓縮檔。 它會將資料夾內容壓縮成壓縮壓縮檔,然後再將內容解壓到新的資料夾。

using System;
using System.IO.Compression;

class Program
{
    static void Main(string[] args)
    {
        string startPath = @".\start";
        string zipPath = @".\result.zip";
        string extractPath = @".\extract";

        ZipFile.CreateFromDirectory(startPath, zipPath);

        ZipFile.ExtractToDirectory(zipPath, extractPath);
    }
}
Imports System.IO.Compression

Module Module1

    Sub Main()
        Dim startPath As String = ".\start"
        Dim zipPath As String = ".\result.zip"
        Dim extractPath As String = ".\extract"

        ZipFile.CreateFromDirectory(startPath, zipPath)

        ZipFile.ExtractToDirectory(zipPath, extractPath)
    End Sub

End Module

備註

操作壓縮壓縮檔及其檔案的方法分為三個類別: ZipFile、、 ZipArchiveZipArchiveEntry

去...... 用......
從目錄建立壓縮壓縮檔 ZipFile.CreateFromDirectory
將壓縮壓縮檔的內容解壓到目錄 ZipFile.ExtractToDirectory
將新檔案加入現有的壓縮壓縮檔 ZipArchive.CreateEntry
在壓縮壓縮檔中擷取檔案 ZipArchive.GetEntry
將所有檔案從壓縮壓縮檔中擷取 ZipArchive.Entries
打開串流,指向包含在壓縮檔中的單一檔案 ZipArchiveEntry.Open
從壓縮壓縮檔刪除檔案 ZipArchiveEntry.Delete

方法

名稱 Description
CreateFromDirectory(String, Stream, CompressionLevel, Boolean, Encoding)

在指定的串流中建立一個壓縮壓縮檔,包含指定目錄中的檔案與目錄,使用指定的壓縮等級與字元編碼作為條目名稱與註解,並可選擇包含基礎目錄。

CreateFromDirectory(String, Stream, CompressionLevel, Boolean)

在指定的串流中建立一個壓縮壓縮檔,包含指定目錄中的檔案與目錄,使用指定的壓縮等級,並可選擇包含基礎目錄。

CreateFromDirectory(String, Stream, ZipFileCreationOptions)

提供建立、解壓及開啟壓縮壓縮檔的靜態方法。

CreateFromDirectory(String, Stream)

在指定的串流中建立一個包含該目錄檔案與目錄的 zip 壓縮檔。

CreateFromDirectory(String, String, CompressionLevel, Boolean, Encoding)

建立一個壓縮壓縮檔,包含指定目錄中的檔案與目錄,使用指定的壓縮等級與字元編碼作為條目名稱與註解,並可選擇包含基礎目錄。

CreateFromDirectory(String, String, CompressionLevel, Boolean)

建立一個包含指定目錄檔案與目錄的壓縮壓縮檔,並可選擇包含基礎目錄的壓縮壓縮檔。

CreateFromDirectory(String, String, ZipFileCreationOptions)

提供建立、解壓及開啟壓縮壓縮檔的靜態方法。

CreateFromDirectory(String, String)

建立一個包含指定目錄檔案與目錄的壓縮壓縮檔。

CreateFromDirectoryAsync(String, Stream, CancellationToken)

非同步地在指定串流中建立一個包含該目錄檔案與目錄的壓縮壓縮檔。

CreateFromDirectoryAsync(String, Stream, CompressionLevel, Boolean, CancellationToken)

非同步地在指定串流中建立一個壓縮壓縮檔,包含指定目錄中的檔案與目錄,並可選擇包含基礎目錄。

CreateFromDirectoryAsync(String, Stream, CompressionLevel, Boolean, Encoding, CancellationToken)

非同步地在指定串流中建立一個壓縮壓縮檔,包含指定目錄的檔案與目錄,並使用指定的壓縮等級與字元編碼作為條目名稱,並可選擇包含基礎目錄。

CreateFromDirectoryAsync(String, Stream, ZipFileCreationOptions, CancellationToken)

提供建立、解壓及開啟壓縮壓縮檔的靜態方法。

CreateFromDirectoryAsync(String, String, CancellationToken)

非同步地在路徑 destinationArchiveFileName 建立一個壓縮壓縮檔,包含由 sourceDirectoryName指定的目錄中的檔案與目錄。

CreateFromDirectoryAsync(String, String, CompressionLevel, Boolean, CancellationToken)

非同步地在路徑 destinationArchiveFileName 建立一個壓縮壓縮檔,包含由 sourceDirectoryName所指定的目錄中的檔案與目錄。

CreateFromDirectoryAsync(String, String, CompressionLevel, Boolean, Encoding, CancellationToken)

非同步地在路徑 destinationArchiveFileName 建立一個壓縮壓縮檔,包含由 sourceDirectoryName所指定的目錄中的檔案與目錄。

CreateFromDirectoryAsync(String, String, ZipFileCreationOptions, CancellationToken)

提供建立、解壓及開啟壓縮壓縮檔的靜態方法。

ExtractToDirectory(Stream, String, Boolean)

從指定串流中儲存的所有壓縮壓縮檔解壓,並將其置於檔案系統指定的目的地目錄中,並可選擇是否覆蓋目的地目錄中的檔案。

ExtractToDirectory(Stream, String, Encoding, Boolean)

從指定串流中儲存的所有壓縮壓縮檔案解壓,並將其置於檔案系統指定的目的地目錄中,使用指定的字元編碼作為條目名稱與註解,並可選擇是否覆蓋目標目錄中的檔案。

ExtractToDirectory(Stream, String, Encoding)

從指定串流中儲存的所有壓縮壓縮檔解壓,並將其置於檔案系統指定的目的地目錄,並使用指定的字元編碼作為條目名稱與註解。

ExtractToDirectory(Stream, String, ZipExtractionOptions)

提供建立、解壓及開啟壓縮壓縮檔的靜態方法。

ExtractToDirectory(Stream, String)

從指定串流中儲存的所有壓縮壓縮檔解壓,並將其置於檔案系統指定的目的地目錄中。

ExtractToDirectory(String, String, Boolean)

將指定壓縮檔中的所有檔案解壓到檔案系統上的目錄。

ExtractToDirectory(String, String, Encoding, Boolean)

將指定壓縮檔中的所有檔案解壓到檔案系統上的目錄。

ExtractToDirectory(String, String, Encoding)

將指定壓縮壓縮檔中的所有檔案解壓到檔案系統的目錄,並使用指定的字元編碼作為條目名稱與註解。

ExtractToDirectory(String, String, ZipExtractionOptions)

提供建立、解壓及開啟壓縮壓縮檔的靜態方法。

ExtractToDirectory(String, String)

將指定壓縮檔中的所有檔案解壓到檔案系統上的目錄。

ExtractToDirectoryAsync(Stream, String, Boolean, CancellationToken)

非同步解壓指定串流中儲存的所有壓縮壓縮檔,並將其置於檔案系統指定的目的地目錄中,並可選擇是否覆蓋目的地目錄中的檔案。

ExtractToDirectoryAsync(Stream, String, CancellationToken)

非同步解壓所有儲存在指定串流中的壓縮壓縮檔,並將其置於檔案系統指定的目的地目錄中。

ExtractToDirectoryAsync(Stream, String, Encoding, Boolean, CancellationToken)

非同步解壓指定串流中儲存的所有 zip 壓縮檔,並將其置於檔案系統指定的目的地目錄,使用指定的字元編碼作為條目名稱,並可選擇是否覆蓋目標目錄中的檔案。

ExtractToDirectoryAsync(Stream, String, Encoding, CancellationToken)

非同步解壓所有儲存在指定串流中的 zip 壓縮檔,並將其置於檔案系統指定的目的地目錄,並使用指定的字元編碼作為條目名稱。

ExtractToDirectoryAsync(Stream, String, ZipExtractionOptions, CancellationToken)

提供建立、解壓及開啟壓縮壓縮檔的靜態方法。

ExtractToDirectoryAsync(String, String, Boolean, CancellationToken)

非同步解壓指定壓縮檔中的所有檔案到檔案系統上的目錄。

ExtractToDirectoryAsync(String, String, CancellationToken)

非同步解壓指定壓縮檔中的所有檔案到檔案系統上的目錄。

ExtractToDirectoryAsync(String, String, Encoding, Boolean, CancellationToken)

非同步解壓指定壓縮檔中的所有檔案到檔案系統上的目錄。

指定的目錄不存在。 此方法將建立所有子目錄及指定的目錄。

若解壓時發生錯誤,該壓縮檔將保持部分解壓狀態。 每個項目都會被解壓,使得所解壓縮的檔案與 destinationDirectoryName 的相對路徑與該條目對壓縮檔的路徑相同。 路徑可指定相對或絕對路徑資訊。 相對路徑資訊會被解讀為相對於目前工作目錄的相對於。 若要歸檔的檔案最後修改時間無效,則會使用第一個可以壓縮時間戳格式表示的日期時間(1980年1月1日午夜)。

ExtractToDirectoryAsync(String, String, Encoding, CancellationToken)

非同步解壓指定壓縮檔中的所有檔案到檔案系統上的目錄。

ExtractToDirectoryAsync(String, String, ZipExtractionOptions, CancellationToken)

提供建立、解壓及開啟壓縮壓縮檔的靜態方法。

Open(String, ZipArchiveMode, Encoding)

在指定路徑、指定模式下,並使用指定的字元編碼來開啟一個 zip 壓縮檔。

Open(String, ZipArchiveMode)

在指定路徑和模式下開啟壓縮壓縮檔。

OpenAsync(String, ZipArchiveMode, CancellationToken)

非同步在指定ZipArchivearchiveFileName模式下開啟 aZipArchiveMode

OpenAsync(String, ZipArchiveMode, Encoding, CancellationToken)

非同步在指定ZipArchivearchiveFileName模式下開啟 aZipArchiveMode

OpenRead(String)

在指定路徑開啟一個 zip 壓縮檔以便讀取。

OpenReadAsync(String, CancellationToken)

非同步地在指定路徑上開啟 a ZipArchive 進行讀取。 指定的檔案以 開封。FileMode.Open

適用於