Поделиться через


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

Определение

Инициализирует новый экземпляр класса ZipArchive.

Перегрузки

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 из указанного потока.

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.

Формат содержимого потока отличен от ZIP-архива.

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

ZipArchive(Stream, ZipArchiveMode)

Исходный код:
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

Одно из значений перечисления, указывающее, для чтения, создания или обновления записей используется ZIP-архив.

Исключения

Поток уже закрыт или возможности потока не соответствует режиму.

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

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

Содержимое потока не удалось интерпретировать как ZIP-архив.

-или-

mode имеет значение Update и запись отсутствует в архиве или повреждена и не может быть прочитана.

-или-

mode имеет значение Update и запись слишком велика, чтобы поместиться в памяти.

Комментарии

mode Если параметр имеет значение Read, поток должен поддерживать чтение. mode Если параметр имеет значение Create, поток должен поддерживать запись. mode Если параметр имеет значение Update, поток должен поддерживать чтение, запись и поиск.

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

ZipArchive(Stream, ZipArchiveMode, Boolean)

Исходный код:
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

Одно из значений перечисления, указывающее, для чтения, создания или обновления записей используется ZIP-архив.

leaveOpen
Boolean

Значение true, чтобы оставить поток открытым после удаления объекта ZipArchive; в противном случае — значение false.

Исключения

Поток уже закрыт или возможности потока не соответствует режиму.

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

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

Содержимое потока не удалось интерпретировать как ZIP-архив.

-или-

mode имеет значение Update и запись отсутствует в архиве или повреждена и не может быть прочитана.

-или-

mode имеет значение Update и запись слишком велика, чтобы поместиться в памяти.

Комментарии

mode Если параметр имеет значение Read, поток должен поддерживать чтение. mode Если параметр имеет значение Create, поток должен поддерживать запись. mode Если параметр имеет значение Update, поток должен поддерживать чтение, запись и поиск.

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

ZipArchive(Stream, ZipArchiveMode, Boolean, Encoding)

Исходный код:
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

Одно из значений перечисления, указывающее, для чтения, создания или обновления записей используется ZIP-архив.

leaveOpen
Boolean

Значение true, чтобы оставить поток открытым после удаления объекта ZipArchive; в противном случае — значение false.

entryNameEncoding
Encoding

Кодирование, используемое при чтении или записи имен записей в этом архиве. Задайте значение для этого параметра, только если кодирование требуется для взаимодействия с инструментами и библиотеками ZIP-архива, которые не поддерживают кодирование UTF-8 для имен записей.

Исключения

Поток уже закрыт или возможности потока не соответствует режиму.

-или-

Для entryNameEncoding указана кодировка, отличающаяся от UTF-8.

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

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

Содержимое потока не удалось интерпретировать как ZIP-архив.

-или-

mode имеет значение Update и запись отсутствует в архиве или повреждена и не может быть прочитана.

-или-

mode имеет значение Update и запись слишком велика, чтобы поместиться в памяти.

Комментарии

mode Если параметр имеет значение Read, поток должен поддерживать чтение. mode Если параметр имеет значение Create, поток должен поддерживать запись. mode Если параметр имеет значение Update, поток должен поддерживать чтение, запись и поиск.

Если вы открываете ZIP-архивный файл для чтения и entryNameEncoding имеете значение null, имена записей декодируются в соответствии со следующими правилами:

  • Если флаг кодировки языка (в битовом флаге общего назначения заголовка локального файла) не задан, для декодирования имени записи используется текущая системная кодовая страница по умолчанию.

  • Если установлен флаг кодировки языка, для декодирования имени записи используется UTF-8.

При открытии ZIP-архивного файла для чтения и entryNameEncoding для параметра задано значение, отличное nullот , имена записей декодируются в соответствии со следующими правилами:

  • Если флаг кодировки языка не задан, указанный entryNameEncoding используется для декодирования имени записи.

  • Если установлен флаг кодировки языка, для декодирования имени записи используется UTF-8.

При записи в архивные файлы и entryNameEncoding для параметра задано значение null, имена записей кодируются в соответствии со следующими правилами:

  • Для имен записей, содержащих символы за пределами диапазона ASCII, устанавливается флаг кодировки языка, а имена записей кодируются с помощью UTF-8.

  • Для имен записей, содержащих только символы ASCII, флаг кодировки языка не установлен, а имена записей кодируются с помощью текущей системной кодовой страницы по умолчанию.

При записи в архивные файлы и entryNameEncoding для параметра задано значение, отличное nullот , указанное entryNameEncoding используется для кодирования имен записей в байтах. Флаг кодировки языка (в битовом флаге общего назначения заголовка локального файла) устанавливается только в том случае, если указанная кодировка является кодировкой UTF-8.

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