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Несжатый
lh4Скользящий словарь на 8 КиБ и статический Хаффман
lh5Скользящий словарь на 16 КиБ и статический Хаффман
lh6Скользящий словарь на 64 КиБ и статический Хаффман
lh7Скользящий словарь на 128 КиБ и статический Хаффман
lhxСкользящий словарь на 1 Миб и статический Хаффман
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

Предоставлен неправильный пароль. - или - Архив поврежден.

 Русский