Class CabArchive

Class CabArchive

Namespace: Aspose.Zip.Cab
Assembly: Aspose.Zip.dll (25.2.0)

This class represents a cab archive file.

public class CabArchive : IArchive, IDisposable

Inheritance

objectCabArchive

Implements

IArchive, IDisposable

Inherited Members

object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

Constructors

CabArchive(Stream)

Initializes a new instance of the Aspose.Zip.Cab.CabArchive class and composes entries list can be extracted from the archive.

public CabArchive(Stream sourceStream)

Parameters

sourceStream Stream

The source of the archive. It must be seekable.

Examples

The following example shows how to extract all the entries to a directory.

using (var archive = new CabArchive(File.OpenRead("archive.cab")))
{ 
   archive.ExtractToDirectory("C:\extracted");
}

Remarks

This constructor does not unpack any entry. See Aspose.Zip.Cab.CabEntry.Open method for unpacking.

Exceptions

ArgumentNullException

sourceStream is null.

ArgumentException

sourceStream is not seekable.

InvalidDataException

sourceStream is not valid cab archive.

EndOfStreamException

The stream is too short.

CabArchive(string)

Initializes a new instance of the Aspose.Zip.Cab.CabArchive class and composes entries list can be extracted from the archive.

public CabArchive(string path)

Parameters

path string

The path to the archive file.

Examples

The following example shows how to extract all the entries to a directory.

using (var archive = new CabArchive("archive.cab")) 
{ 
   archive.ExtractToDirectory("C:\extracted");
}

Remarks

This constructor does not unpack any entry. See Aspose.Zip.Cab.CabEntry.Open method for unpacking.

Exceptions

ArgumentNullException

path is null.

SecurityException

The caller does not have the required permission to access.

ArgumentException

The path is empty, contains only white spaces, or contains invalid characters.

UnauthorizedAccessException

Access to file path is denied.

PathTooLongException

The specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.

NotSupportedException

File at path contains a colon (:) in the middle of the string.

FileNotFoundException

The file is not found.

DirectoryNotFoundException

The specified path is invalid, such as being on an unmapped drive.

IOException

The file is already open.

EndOfStreamException

File is too short.

Properties

Entries

Gets entries of Aspose.Zip.Cab.CabEntry type constituting the archive.

public ReadOnlyCollection<cabentry> Entries { get; }

Property Value

ReadOnlyCollection<CabEntry&gt;

Methods

Dispose(bool)

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

protected virtual void Dispose(bool disposing)

Parameters

disposing bool

Whether managed resources should be disposed.

Dispose()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

public void Dispose()

ExtractToDirectory(string)

Extracts all the files in the archive to the directory provided.

public void ExtractToDirectory(string destinationDirectory)

Parameters

destinationDirectory string

The path to the directory to place the extracted files in.

Examples

using (var archive = new CabArchive("archive.cab")) 
{ 
   archive.ExtractToDirectory("C:\extracted");
}

Remarks

If the directory does not exist, it will be created.

Exceptions

ArgumentNullException

path is null

PathTooLongException

The specified path, file name, or both exceed the system-defined maximum length.

SecurityException

The caller does not have the required permission to access existing directory.

NotSupportedException

If the directory does not exist, path contains a colon character (:) that is not part of a drive label (“C:").

ArgumentException

path is a zero-length string, contains only white space, or contains one or more invalid characters. You can query for invalid characters by using the System.IO.Path.GetInvalidPathChars method. -or- path is prefixed with, or contains, only a colon character (:).

IOException

The directory specified by path is a file. -or- The network name is not known.

InvalidDataException

Archive is corrupted.

 English