ZipArchive Конструкторы

Определение

Инициализирует новый экземпляр класса ZipArchive.Initializes a new instance of the ZipArchive class.

Перегрузки

ZipArchive(Stream)

Инициализирует новый экземпляр класса ZipArchive из указанного потока.Initializes a new instance of the ZipArchive class from the specified stream.

ZipArchive(Stream, ZipArchiveMode)

Инициализирует новый экземпляр класса ZipArchive из указанного потока с указанным режимом.Initializes a new instance of the ZipArchive class from the specified stream and with the specified mode.

ZipArchive(Stream, ZipArchiveMode, Boolean)

Инициализирует новый экземпляр класса ZipArchive в указанном потоке для указанного режима, а также при необходимости оставляет поток открытым.Initializes a new instance of the ZipArchive class on the specified stream for the specified mode, and optionally leaves the stream open.

ZipArchive(Stream, ZipArchiveMode, Boolean, Encoding)

Инициализирует новый экземпляр класса ZipArchive в указанном потоке для заданного режима, использует указанную кодировку для кодировку для имен записей, а также, при необходимости, оставляет поток открытым.Initializes a new instance of the ZipArchive class on the specified stream for the specified mode, uses the specified encoding for entry names, and optionally leaves the stream open.

ZipArchive(Stream)

Инициализирует новый экземпляр класса ZipArchive из указанного потока.Initializes a new instance of the ZipArchive class from the specified stream.

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

Поток, содержащий архив для чтения.The stream that contains the archive to be read.

Исключения

Поток уже закрыт или не поддерживает чтение.The stream is already closed or does not support reading.

stream имеет значение null.stream is null.

Формат содержимого потока отличен от ZIP-архива.The contents of the stream are not in the zip archive format.

Применяется к

ZipArchive(Stream, ZipArchiveMode)

Инициализирует новый экземпляр класса ZipArchive из указанного потока с указанным режимом.Initializes a new instance of the ZipArchive class from the specified stream and with the specified mode.

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

Входной или выходной поток.The input or output stream.

mode
ZipArchiveMode

Одно из значений перечисления, указывающее, для чтения, создания или обновления записей используется ZIP-архив.One of the enumeration values that indicates whether the zip archive is used to read, create, or update entries.

Исключения

Поток уже закрыт или возможности потока не соответствует режиму.The stream is already closed, or the capabilities of the stream do not match the mode.

stream имеет значение null.stream is null.

mode не является допустимым значением.mode is an invalid value.

Содержимое потока не удалось интерпретировать как ZIP-архив.The contents of the stream could not be interpreted as a zip archive.

-или--or- mode имеет значение Update и запись отсутствует в архиве или повреждена и не может быть прочитана.mode is Update and an entry is missing from the archive or is corrupt and cannot be read.

-или--or- mode имеет значение Update и запись слишком велика, чтобы поместиться в памяти.mode is Update and an entry is too large to fit into memory.

Комментарии

Если mode параметр имеет значение Read , поток должен поддерживать чтение.If the mode parameter is set to Read, the stream must support reading. Если mode параметр имеет значение Create , поток должен поддерживать запись.If the mode parameter is set to Create, the stream must support writing. Если mode параметр имеет значение Update , поток должен поддерживать чтение, запись и поиск.If the mode parameter is set to Update, the stream must support reading, writing, and seeking.

Применяется к

ZipArchive(Stream, ZipArchiveMode, Boolean)

Инициализирует новый экземпляр класса ZipArchive в указанном потоке для указанного режима, а также при необходимости оставляет поток открытым.Initializes a new instance of the ZipArchive class on the specified stream for the specified mode, and optionally leaves the stream open.

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

Входной или выходной поток.The input or output stream.

mode
ZipArchiveMode

Одно из значений перечисления, указывающее, для чтения, создания или обновления записей используется ZIP-архив.One of the enumeration values that indicates whether the zip archive is used to read, create, or update entries.

leaveOpen
Boolean

Значение true, чтобы оставить поток открытым после удаления объекта ZipArchive; в противном случае — значение false.true to leave the stream open after the ZipArchive object is disposed; otherwise, false.

Исключения

Поток уже закрыт или возможности потока не соответствует режиму.The stream is already closed, or the capabilities of the stream do not match the mode.

stream имеет значение null.stream is null.

mode не является допустимым значением.mode is an invalid value.

Содержимое потока не удалось интерпретировать как ZIP-архив.The contents of the stream could not be interpreted as a zip archive.

-или--or- mode имеет значение Update и запись отсутствует в архиве или повреждена и не может быть прочитана.mode is Update and an entry is missing from the archive or is corrupt and cannot be read.

-или--or- mode имеет значение Update и запись слишком велика, чтобы поместиться в памяти.mode is Update and an entry is too large to fit into memory.

Комментарии

Если mode параметр имеет значение Read , поток должен поддерживать чтение.If the mode parameter is set to Read, the stream must support reading. Если mode параметр имеет значение Create , поток должен поддерживать запись.If the mode parameter is set to Create, the stream must support writing. Если mode параметр имеет значение Update , поток должен поддерживать чтение, запись и поиск.If the mode parameter is set to Update, the stream must support reading, writing, and seeking.

Применяется к

ZipArchive(Stream, ZipArchiveMode, Boolean, Encoding)

Инициализирует новый экземпляр класса ZipArchive в указанном потоке для заданного режима, использует указанную кодировку для кодировку для имен записей, а также, при необходимости, оставляет поток открытым.Initializes a new instance of the ZipArchive class on the specified stream for the specified mode, uses the specified encoding for entry names, and optionally leaves the stream open.

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

Входной или выходной поток.The input or output stream.

mode
ZipArchiveMode

Одно из значений перечисления, указывающее, для чтения, создания или обновления записей используется ZIP-архив.One of the enumeration values that indicates whether the zip archive is used to read, create, or update entries.

leaveOpen
Boolean

Значение true, чтобы оставить поток открытым после удаления объекта ZipArchive; в противном случае — значение false.true to leave the stream open after the ZipArchive object is disposed; otherwise, false.

entryNameEncoding
Encoding

Кодирование, используемое при чтении или записи имен записей в этом архиве.The encoding to use when reading or writing entry names in this archive. Задайте значение для этого параметра, только если кодирование требуется для взаимодействия с инструментами и библиотеками ZIP-архива, которые не поддерживают кодирование UTF-8 для имен записей.Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names.

Исключения

Поток уже закрыт или возможности потока не соответствует режиму.The stream is already closed, or the capabilities of the stream do not match the mode.

-или--or-

Для entryNameEncoding указана кодировка, отличающаяся от UTF-8.An encoding other than UTF-8 is specified for the entryNameEncoding.

stream имеет значение null.stream is null.

mode не является допустимым значением.mode is an invalid value.

Содержимое потока не удалось интерпретировать как ZIP-архив.The contents of the stream could not be interpreted as a zip archive.

-или--or- mode имеет значение Update и запись отсутствует в архиве или повреждена и не может быть прочитана.mode is Update and an entry is missing from the archive or is corrupt and cannot be read.

-или--or- mode имеет значение Update и запись слишком велика, чтобы поместиться в памяти.mode is Update and an entry is too large to fit into memory.

Комментарии

Если mode параметр имеет значение Read , поток должен поддерживать чтение.If the mode parameter is set to Read, the stream must support reading. Если mode параметр имеет значение Create , поток должен поддерживать запись.If the mode parameter is set to Create, the stream must support writing. Если mode параметр имеет значение Update , поток должен поддерживать чтение, запись и поиск.If the mode parameter is set to Update, the stream must support reading, writing, and seeking.

При открытии файла ZIP-архива для чтения и entryNameEncoding имеет значение null , имена записей декодированы в соответствии со следующими правилами.When you open a zip archive file for reading and entryNameEncoding is set to null, entry names are decoded according to the following rules:

  • Если не задан флаг кодирования языка (в битовом флаге общего назначения локального заголовка файла), то для декодирования имени записи используется текущая системная кодовая страница по умолчанию.When the language encoding flag (in the general-purpose bit flag of the local file header) is not set, the current system default code page is used to decode the entry name.

  • При установке флага кодировки языка UTF-8 используется для декодирования имени записи.When the language encoding flag is set, UTF-8 is used to decode the entry name.

При открытии файла ZIP-архива для чтения и entryNameEncoding задании значения, отличного от null , имена записей декодированы в соответствии со следующими правилами.When you open a zip archive file for reading and entryNameEncoding is set to a value other than null, entry names are decoded according to the following rules:

  • Если флаг кодировки языка не установлен, указанный объект entryNameEncoding используется для декодирования имени записи.When the language encoding flag is not set, the specified entryNameEncoding is used to decode the entry name.

  • При установке флага кодировки языка UTF-8 используется для декодирования имени записи.When the language encoding flag is set, UTF-8 is used to decode the entry name.

При записи в архивные файлы и entryNameEncoding задано значение null , имена записей кодируются в соответствии со следующими правилами.When you write to archive files and entryNameEncoding is set to null, entry names are encoded according to the following rules:

  • Для имен записей, содержащих символы за пределами диапазона ASCII, установлен флаг кодировки языка, а имена записей кодируются с помощью UTF-8.For entry names that contain characters outside the ASCII range, the language encoding flag is set, and entry names are encoded by using UTF-8.

  • Для имен записей, содержащих только символы ASCII, не задан флаг кодировки языка, а имена записей кодируются с использованием текущей системной кодовой страницы по умолчанию.For entry names that contain only ASCII characters, the language encoding flag is not set, and entry names are encoded by using the current system default code page.

При записи в архивные файлы и entryNameEncoding задании значения, отличного от null , указанное значение entryNameEncoding используется для кодирования имен записей в байты.When you write to archive files and entryNameEncoding is set to a value other than null, the specified entryNameEncoding is used to encode the entry names into bytes. Флаг кодировки языка (в битовом флаге общего назначения локального заголовка файла) задается только в том случае, если указанная кодировка является кодировкой UTF-8.The language encoding flag (in the general-purpose bit flag of the local file header) is set only when the specified encoding is a UTF-8 encoding.

Применяется к