語言

ZipArchive 建構函式

定義

初始化 ZipArchive 類別的新執行個體。

多載

名稱 Description
ZipArchive(Stream)

從指定的串流初始化該類別的新實例 ZipArchive 。

ZipArchive(Stream, ZipArchiveMode)

初始化來自指定串流和指定模式的新類別實例 ZipArchive 。

ZipArchive(Stream, ZipArchiveMode, Boolean)

初始化該類別在指定串流中為指定模式的新實例 ZipArchive ,並可選擇性地保持該串流開啟。

ZipArchive(Stream, ZipArchiveMode, Boolean, Encoding)

初始化該類別在指定串流中為指定模式的新實例 ZipArchive ,使用指定的編碼作為條目名稱,並可選擇性地保持串流開啟。

ZipArchive(Stream)

來源:
ZipArchive.cs
來源:
ZipArchive.cs
來源:
ZipArchive.cs
來源:
ZipArchive.cs
來源:
ZipArchive.cs

從指定的串流初始化該類別的新實例 ZipArchive 。

public:
 ZipArchive(System::IO::Stream ^ stream);
public ZipArchive(System.IO.Stream stream);
new System.IO.Compression.ZipArchive : System.IO.Stream -> System.IO.Compression.ZipArchive
Public Sub New (stream As Stream)

參數

stream
Stream

包含要閱讀的檔案串流。

例外狀況

串流已經關閉或不支援讀取。

stream 是 null。

串流內容並非以壓縮壓縮格式呈現。

適用於

ZipArchive(Stream, ZipArchiveMode)

來源:
ZipArchive.cs
來源:
ZipArchive.cs
來源:
ZipArchive.cs
來源:
ZipArchive.cs
來源:
ZipArchive.cs

初始化來自指定串流和指定模式的新類別實例 ZipArchive 。

public:
 ZipArchive(System::IO::Stream ^ stream, System::IO::Compression::ZipArchiveMode mode);
public ZipArchive(System.IO.Stream stream, System.IO.Compression.ZipArchiveMode mode);
new System.IO.Compression.ZipArchive : System.IO.Stream * System.IO.Compression.ZipArchiveMode -> System.IO.Compression.ZipArchive
Public Sub New (stream As Stream, mode As ZipArchiveMode)

參數

stream
Stream

輸入或輸出流。

mode
ZipArchiveMode

其中一個列舉值會指示壓縮壓縮檔是否用於讀取、建立或更新條目。

例外狀況

串流已經關閉,或串流的能力與模式不符。

stream 是 null。

mode 是無效值。

串流內容無法被解讀為壓縮壓縮檔。

-或-

mode 且 Update 有條目缺失或損壞無法讀取。

-或-

mode 且 Update 某項太大無法放入記憶體。

備註

若 mode 參數設為 Read,串流必須支援讀取。 若 mode 參數設為 Create,串流必須支援寫入。 若 mode 參數設為 Update,串流必須支援讀取、寫入與尋址。

適用於

ZipArchive(Stream, ZipArchiveMode, Boolean)

來源:
ZipArchive.cs
來源:
ZipArchive.cs
來源:
ZipArchive.cs
來源:
ZipArchive.cs
來源:
ZipArchive.cs

初始化該類別在指定串流中為指定模式的新實例 ZipArchive ,並可選擇性地保持該串流開啟。

public:
 ZipArchive(System::IO::Stream ^ stream, System::IO::Compression::ZipArchiveMode mode, bool leaveOpen);
public ZipArchive(System.IO.Stream stream, System.IO.Compression.ZipArchiveMode mode, bool leaveOpen);
new System.IO.Compression.ZipArchive : System.IO.Stream * System.IO.Compression.ZipArchiveMode * bool -> System.IO.Compression.ZipArchive
Public Sub New (stream As Stream, mode As ZipArchiveMode, leaveOpen As Boolean)

參數

stream
Stream

輸入或輸出流。

mode
ZipArchiveMode

其中一個列舉值會指示壓縮壓縮檔是否用於讀取、建立或更新條目。

leaveOpen
Boolean

true 在物件被處理後 ZipArchive 保持流路開啟;否則, false。

例外狀況

串流已經關閉,或串流的能力與模式不符。

stream 是 null。

mode 是無效值。

串流內容無法被解讀為壓縮壓縮檔。

-或-

mode 且 Update 有條目缺失或損壞無法讀取。

-或-

mode 且 Update 某項太大無法放入記憶體。

備註

若 mode 參數設為 Read,串流必須支援讀取。 若 mode 參數設為 Create,串流必須支援寫入。 若 mode 參數設為 Update,串流必須支援讀取、寫入與尋址。

適用於

ZipArchive(Stream, ZipArchiveMode, Boolean, Encoding)

來源:
ZipArchive.cs
來源:
ZipArchive.cs
來源:
ZipArchive.cs
來源:
ZipArchive.cs
來源:
ZipArchive.cs

初始化該類別在指定串流中為指定模式的新實例 ZipArchive ,使用指定的編碼作為條目名稱,並可選擇性地保持串流開啟。

public:
 ZipArchive(System::IO::Stream ^ stream, System::IO::Compression::ZipArchiveMode mode, bool leaveOpen, System::Text::Encoding ^ entryNameEncoding);
public ZipArchive(System.IO.Stream stream, System.IO.Compression.ZipArchiveMode mode, bool leaveOpen, System.Text.Encoding entryNameEncoding);
public ZipArchive(System.IO.Stream stream, System.IO.Compression.ZipArchiveMode mode, bool leaveOpen, System.Text.Encoding? entryNameEncoding);
new System.IO.Compression.ZipArchive : System.IO.Stream * System.IO.Compression.ZipArchiveMode * bool * System.Text.Encoding -> System.IO.Compression.ZipArchive
Public Sub New (stream As Stream, mode As ZipArchiveMode, leaveOpen As Boolean, entryNameEncoding As Encoding)

參數

stream
Stream

輸入或輸出流。

mode
ZipArchiveMode

其中一個列舉值會指示壓縮壓縮檔是否用於讀取、建立或更新條目。

leaveOpen
Boolean

true 在物件被處理後 ZipArchive 保持流路開啟;否則, false。

entryNameEncoding
Encoding

閱讀或書寫本檔案中條目名稱與註解時所使用的編碼方式。 只有當需要編碼以與不支援 UTF-8 編碼的 zip 壓縮工具和函式庫互通時,才指定此參數值。

例外狀況

串流已經關閉,或串流的能力與模式不符。

-或-

除了 UTF-8 外,還指定了一種非 UTF-8 的編碼。entryNameEncoding

stream 是 null。

mode 是無效值。

串流內容無法被解讀為壓縮壓縮檔。

-或-

mode 且 Update 有條目缺失或損壞無法讀取。

-或-

mode 且 Update 某項太大無法放入記憶體。

備註

若 mode 參數設為 Read,串流必須支援讀取。 若 mode 參數設為 Create,串流必須支援寫入。 若 mode 參數設為 Update,串流必須支援讀取、寫入與尋址。

當您開啟一個設定為 的entryNameEncoding壓縮壓縮檔來讀取null時,條目名稱和註解會依照以下規則解碼:

  • 當語言編碼標誌(本地檔案標頭的通用位元標誌)未設定時,系統會使用當前系統預設代碼頁來解碼條目名稱與註解。
  • 當語言編碼標誌設定時,會使用 UTF-8 來解碼條目名稱與註解。

當你打開一個 zip 壓縮檔來讀取,且 entryNameEncoding 設定為 以外的 null值時,條目名稱和註解會依照以下規則解碼:

  • 當語言編碼標誌未設定時,指定標記 entryNameEncoding 會用來解碼條目名稱與註解。
  • 當語言編碼標誌設定時,會使用 UTF-8 來解碼條目名稱與註解。

當你寫入 archive 檔案時, entryNameEncoding 且設定為 null,條目名稱和註解會依照以下規則編碼:

  • 對於包含 ASCII 範圍外字元的條目名稱與註解,則設定語言編碼標誌,條目名稱與註解則使用 UTF-8 編碼。
  • 對於僅包含 ASCII 字元的項目名稱與註解,語言編碼標誌不會設定,條目名稱與註解則使用目前系統預設的代碼頁來編碼。

當你寫入壓縮檔檔案時 entryNameEncoding ,設定為非 null的值,指定值 entryNameEncoding 會用來將項目名稱和註解編碼成位元組。 語言編碼旗標(在本地檔案標頭的通用位元旗標中)僅在指定的編碼為 UTF-8 編碼時設定。

適用於