Class CabArchive

Class CabArchive

命名空间: Aspose.Zip.Cab
程序集: Aspose.Zip.dll (25.1.0)

此类表示 cab 存档文件。

public class CabArchive : IArchive, IDisposable

继承

objectCabArchive

实现

IArchive, IDisposable

继承成员

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

构造函数

CabArchive(Stream)

初始化 Aspose.Zip.Cab.CabArchive 类的新实例,并构建可以从存档中提取的条目列表。

public CabArchive(Stream sourceStream)

参数

sourceStream Stream

存档的来源。它必须是可寻址的。

示例

以下示例演示如何将所有条目提取到目录中。

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

备注

此构造函数不解压任何条目。有关解压的更多信息,请参见 Aspose.Zip.Cab.CabEntry.Open 方法。

异常

ArgumentNullException

sourceStream 为 null。

ArgumentException

sourceStream 不是可寻址的。

InvalidDataException

sourceStream 不是有效的 cab 存档。

EndOfStreamException

流太短。

CabArchive(string)

初始化 Aspose.Zip.Cab.CabArchive 类的新实例,并构建可以从存档中提取的条目列表。

public CabArchive(string path)

参数

path string

存档文件的路径。

示例

以下示例演示如何将所有条目提取到目录中。

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

备注

此构造函数不解压任何条目。有关解压的更多信息,请参见 Aspose.Zip.Cab.CabEntry.Open 方法。

异常

ArgumentNullException

path 为 null。

SecurityException

调用者没有访问所需权限。

ArgumentException

path 为空,仅包含空格或包含无效字符。

UnauthorizedAccessException

访问文件 path 被拒绝。

PathTooLongException

指定的 path、文件名或两者超过系统定义的最大长度。例如,在基于 Windows 的平台上,路径必须少于 248 个字符,文件名必须少于 260 个字符。

NotSupportedException

path 中包含字符串中间的冒号 (:)。

FileNotFoundException

未找到文件。

DirectoryNotFoundException

指定的路径无效,例如在未映射的驱动器上。

IOException

文件已打开。

EndOfStreamException

文件太短。

属性

Entries

获取构成存档的 Aspose.Zip.Cab.CabEntry 类型的条目。

public ReadOnlyCollection<cabentry> Entries { get; }

属性值

ReadOnlyCollection<CabEntry&gt;

方法

Dispose(bool)

执行与释放、释放或重置非托管资源相关的应用程序定义任务。

protected virtual void Dispose(bool disposing)

参数

disposing bool

是否应释放托管资源。

Dispose()

执行与释放、释放或重置非托管资源相关的应用程序定义任务。

public void Dispose()

ExtractToDirectory(string)

将存档中的所有文件提取到提供的目录中。

public void ExtractToDirectory(string destinationDirectory)

参数

destinationDirectory string

要放置提取文件的目录路径。

示例

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

备注

如果目录不存在,将创建该目录。

异常

ArgumentNullException

path 为 null

PathTooLongException

指定的路径、文件名或两者超过系统定义的最大长度。

SecurityException

调用者没有访问现有目录的所需权限。

NotSupportedException

如果目录不存在,路径包含冒号字符 (:) 但不是驱动器标签 (“C:") 的一部分。

ArgumentException

path 是零长度字符串,仅包含空格,或包含一个或多个无效字符。您可以使用 System.IO.Path.GetInvalidPathChars 方法查询无效字符。-或- path 以冒号字符 (:) 为前缀,或仅包含冒号字符。

IOException

指定路径的目录是一个文件。-或- 网络名称未知。

InvalidDataException

存档已损坏。

 中文