ClassZipArchive
Represents a package of compressed files in the zip archive format.
Definition
Namespace:Telerik.Windows.Zip
Assembly:Telerik.Windows.Zip.dll
Syntax:
public class ZipArchive : IDisposable, INotifyPropertyChanged
Inheritance: objectZipArchive
Implements:
Properties
Entries
Gets the collection of entries that are currently in the zip archive.
Declaration
public IEnumerable<ZipArchiveEntry> Entries { get; }
Property Value
Exceptions
The zip archive does not support reading.
The zip archive has been disposed.
The zip archive is corrupt, and its entries cannot be retrieved.
EntryNameEncoding
Gets entry name encoding.
Mode
Gets a value that describes the type of action the zip archive can perform on entries.
Methods
Create(Stream)
Creates a new instance of the ZipArchive class.
Declaration
public static ZipArchive Create(Stream stream)
Parameters
stream
The stream that contains the archive.
Returns
Create(Stream, Encoding)
Creates a new instance of the ZipArchive class.
Declaration
public static ZipArchive Create(Stream stream, Encoding entryNameEncoding)
Parameters
stream
The stream that contains the archive.
entryNameEncoding
The encoding to use when reading or writing entry names in this archive. 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.
Returns
Create(Stream, Encoding, CompressionSettings, EncryptionSettings, bool)
Creates a new instance of the ZipArchive class.
Declaration
public static ZipArchive Create(Stream stream, Encoding entryNameEncoding, CompressionSettings compressionSettings, EncryptionSettings encryptionSettings, bool useStrictNaming = true)
Parameters
stream
The stream that contains the archive.
entryNameEncoding
The encoding to use when reading or writing entry names in this archive. 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.
compressionSettings
Compression settings.
encryptionSettings
Encryption settings.
useStrictNaming
A value indicating whether the paths of the entries will be verified to be limited to relative paths that cannot traverse upwards in the file system. True by default.
Returns
CreateEntry(string)
Creates an empty entry that has the specified path and entry name in the zip archive.
Declaration
public ZipArchiveEntry CreateEntry(string entryName)
Parameters
entryName
A path, relative to the root of the archive, that specifies the name of the entry to be created.
Returns
An empty entry in the zip archive.
Exceptions
The entry name is empty.
The entry name is null.
The zip archive does not support writing.
The zip archive has been disposed.
CreateEntry(string, CompressionSettings)
Creates an empty entry that has the specified path and entry name in the zip archive.
Declaration
public ZipArchiveEntry CreateEntry(string entryName, CompressionSettings settings)
Parameters
entryName
A path, relative to the root of the archive, that specifies the name of the entry to be created.
settings
Compression settings.
Returns
An empty entry in the zip archive.
Exceptions
The entry name is empty.
The entry name is null.
The zip archive does not support writing.
The zip archive has been disposed.
Dispose()
Releases the resources used by the current instance of the ZipArchive class.
Declaration
public void Dispose()
Implements
Dispose(bool)
Called by the Dispose() and Finalize() methods to release the unmanaged resources used by the current instance of the ZipArchive class, and optionally finishes writing the archive and releases the managed resources.
Declaration
protected virtual void Dispose(bool disposing)
Parameters
disposing
True to finish writing the archive and release unmanaged and managed resources; false to release only unmanaged resources.
GetEntry(string)
Retrieves a wrapper for the specified entry in the zip archive.
Declaration
public ZipArchiveEntry GetEntry(string entryName)
Parameters
entryName
A path, relative to the root of the archive, that identifies the entry to retrieve.
Returns
A wrapper for the specified entry in the archive; null if the entry does not exist in the archive.
Exceptions
The entry name is empty.
The entry name is null.
The zip archive does not support reading.
The zip archive has been disposed.
The zip archive is corrupt, and its entries cannot be retrieved.
Read(Stream)
Opens an existing archive and returns a new instance of the ZipArchive class.
Declaration
public static ZipArchive Read(Stream stream)
Parameters
stream
The stream that contains the archive to be read.
Returns
Read(Stream, Encoding)
Opens an existing archive and returns a new instance of the ZipArchive class.
Declaration
public static ZipArchive Read(Stream stream, Encoding entryNameEncoding)
Parameters
stream
The stream that contains the archive to be read.
entryNameEncoding
The encoding to use when reading or writing entry names in this archive. 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.
Returns
Read(Stream, Encoding, CompressionSettings, DecryptionSettings, bool)
Opens an existing archive and returns a new instance of the ZipArchive class.
Declaration
public static ZipArchive Read(Stream stream, Encoding entryNameEncoding, CompressionSettings compressionSettings, DecryptionSettings decryptionSettings, bool useStrictNaming = true)
Parameters
stream
The stream that contains the archive to be read.
entryNameEncoding
The encoding to use when reading or writing entry names in this archive. 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.
compressionSettings
Compression settings.
decryptionSettings
Decryption settings.
useStrictNaming
A value indicating whether the paths of the entries will be verified to be limited to relative paths that cannot traverse upwards in the file system. True by default.
Returns
Update(Stream)
Opens an existing archive for update and returns a new instance of the ZipArchive class.
Declaration
public static ZipArchive Update(Stream stream)
Parameters
stream
The stream that contains the archive to be read.
Returns
Update(Stream, Encoding)
Opens an existing archive for update and returns a new instance of the ZipArchive class.
Declaration
public static ZipArchive Update(Stream stream, Encoding entryNameEncoding)
Parameters
stream
The stream that contains the archive to be read.
entryNameEncoding
The encoding to use when reading or writing entry names in this archive. 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.
Returns
Update(Stream, Encoding, CompressionSettings, DecryptionSettings, bool)
Opens an existing archive for update and returns a new instance of the ZipArchive class.
Declaration
public static ZipArchive Update(Stream stream, Encoding entryNameEncoding, CompressionSettings compressionSettings, DecryptionSettings decryptionSettings, bool useStrictNaming = true)
Parameters
stream
The stream that contains the archive to be read.
entryNameEncoding
The encoding to use when reading or writing entry names in this archive. 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.
compressionSettings
Compression settings.
decryptionSettings
Decryption settings.
useStrictNaming
A value indicating whether the paths of the entries will be verified to be limited to relative paths that cannot traverse upwards in the file system. True by default.
Returns
~ZipArchive()
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
Declaration
protected ~ZipArchive()
Events
PropertyChanged
Occurs when a property value changes.
Declaration
public event PropertyChangedEventHandler PropertyChanged
Event Value
Implements