ZipArchive 建構函式
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
初始化 ZipArchive 類別的新執行個體。
多載
| 名稱 | Description |
|---|---|
| ZipArchive(Stream) |
從指定的串流初始化該類別的新實例 ZipArchive 。 |
| ZipArchive(Stream, ZipArchiveMode) |
初始化來自指定串流和指定模式的新類別實例 ZipArchive 。 |
| ZipArchive(Stream, ZipArchiveMode, Boolean) |
初始化該類別在指定串流中為指定模式的新實例 ZipArchive ,並可選擇性地保持該串流開啟。 |
| ZipArchive(Stream, ZipArchiveMode, Boolean, Encoding) |
初始化該類別在指定串流中為指定模式的新實例 ZipArchive ,使用指定的編碼作為條目名稱,並可選擇性地保持串流開啟。 |
ZipArchive(Stream)
從指定的串流初始化該類別的新實例 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 。
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 參數設為 Read,串流必須支援讀取。 若 mode 參數設為 Create,串流必須支援寫入。 若 mode 參數設為 Update,串流必須支援讀取、寫入與尋址。
適用於
ZipArchive(Stream, ZipArchiveMode, Boolean)
初始化該類別在指定串流中為指定模式的新實例 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 參數設為 Read,串流必須支援讀取。 若 mode 參數設為 Create,串流必須支援寫入。 若 mode 參數設為 Update,串流必須支援讀取、寫入與尋址。
適用於
ZipArchive(Stream, ZipArchiveMode, Boolean, Encoding)
初始化該類別在指定串流中為指定模式的新實例 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 壓縮工具和函式庫互通時,才指定此參數值。
例外狀況
stream 是 null。
mode 是無效值。
備註
若 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 編碼時設定。