Class LhaArchive

Class LhaArchive

Namespace: Aspose.Zip.Lha
Assembly: Aspose.Zip.dll (25.1.0)

此类表示 LHA (.lzh) 压缩文件。

public class LhaArchive : IArchive, IDisposable

继承

objectLhaArchive

实现

IArchive, IDisposable

继承成员

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

备注

仅支持以下压缩方法:

方法说明
lh0未压缩
lh48 KiB 滑动字典和静态哈夫曼
lh516 KiB 滑动字典和静态哈夫曼
lh664 KiB 滑动字典和静态哈夫曼
lh7128 KiB 滑动字典和静态哈夫曼
lhx1 MiB 滑动字典和静态哈夫曼
lhd目录

构造函数

LhaArchive(Stream)

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

public LhaArchive(Stream sourceStream)

参数

sourceStream Stream

归档的源。

备注

此构造函数不会解压任何条目。请参见 Aspose.Zip.Lha.LhaArchiveEntry.Extract(System.IO.Stream) 方法以进行解压。

异常

ArgumentNullException

sourceStream 为 null

ArgumentException

sourceStream 不可寻址。

InvalidDataException

发现不适当的数据。

LhaArchive(string)

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

public LhaArchive(string path)

参数

path string

归档文件的完全限定路径或相对路径。

示例

以下示例提取一个归档,然后将第一个条目解压到 MemoryStream

var extracted = new MemoryStream();
using (LhaArchive archive = new LhaArchive("sample.lzh"))
{
    archive.Entries[0].Extract(extracted);
}

备注

此构造函数不会解压任何条目。请参见 Aspose.Zip.ArchiveEntry.Open(System.String) 方法以进行解压。

异常

ArgumentNullException

path 为 null。

SecurityException

调用方没有访问所需的权限。

ArgumentException

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

UnauthorizedAccessException

访问文件 path 被拒绝。

PathTooLongException

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

NotSupportedException

path 中包含冒号 (:)。

FileNotFoundException

未找到文件。

DirectoryNotFoundException

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

IOException

文件已打开。

InvalidDataException

文件已损坏。

属性

Entries

获取构成归档的 Aspose.Zip.Lha.LhaArchiveEntry 类型的文件条目。

public ReadOnlyCollection<lhaarchiveentry> Entries { get; }

属性值

ReadOnlyCollection<LhaArchiveEntry&gt;

方法

Dispose()

public void Dispose()

ExtractToDirectory(string)

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

public void ExtractToDirectory(string destinationDirectory)

参数

destinationDirectory string

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

示例

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

备注

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

异常

ArgumentNullException

destinationDirectory 为 null。

PathTooLongException

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

SecurityException

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

NotSupportedException

如果目录不存在,路径中包含不属于驱动器标签 (“C:") 的冒号字符 (:)。

ArgumentException

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

IOException

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

InvalidDataException

提供了错误的密码。 - 或 - 归档已损坏。

 中文