Class LzmaArchive

Class LzmaArchive

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

Этот класс представляет файл архива LZMA. Используйте его для создания или извлечения архивов LZMA.

public class LzmaArchive : IArchive, IDisposable, IArchiveFileEntry

Наследование

objectLzmaArchive

Реализует

IArchive, IDisposable, IArchiveFileEntry

Унаследованные члены

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

Конструкторы

LzmaArchive(LzmaArchiveSettings)

Инициализирует новый экземпляр класса Aspose.Zip.LZMA.LzmaArchive и создает архив в формате lzma.

public LzmaArchive(LzmaArchiveSettings settings = null)

Параметры

settings LzmaArchiveSettings

Набор параметров конкретного архива lzma.

LzmaArchive(Stream)

Инициализирует новый экземпляр класса Aspose.Zip.LZMA.LzmaArchive, подготовленный для декомпрессии.

public LzmaArchive(Stream source)

Параметры

source Stream

Источник архива.

Примечания

Этот конструктор не выполняет декомпрессию. См. метод Aspose.Zip.LZMA.LzmaArchive.Extract(System.IO.Stream) для декомпрессии.

Исключения

ArgumentException

source не поддерживает позиционирование.

ArgumentNullException

source равно null.

LzmaArchive(string)

Инициализирует новый экземпляр класса Aspose.Zip.LZMA.LzmaArchive, подготовленный для декомпрессии.

public LzmaArchive(string path)

Параметры

path string

Путь к источнику архива.

Примеры

using (FileStream extractedFile = File.Open(extractedFileName, FileMode.Create))
{
    using (var archive = new LzmaArchive(sourceLzmaFile))
    {
         archive.Extract(extractedFile);
    }
}

Примечания

Этот конструктор не выполняет декомпрессию. См. метод Aspose.Zip.LZMA.LzmaArchive.Extract(System.IO.Stream) для декомпрессии.

Исключения

ArgumentNullException

path равно null.

SecurityException

У вызывающего нет необходимых разрешений для доступа.

ArgumentException

path пуст, содержит только пробелы или содержит недопустимые символы.

UnauthorizedAccessException

Доступ к файлу path запрещен.

PathTooLongException

Указанный path, имя файла или оба превышают максимально допустимую длину, определенную системой. Например, на платформах Windows пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.

NotSupportedException

Файл по адресу path содержит двоеточие (:) в середине строки.

Методы

Dispose()

Выполняет задачи, определенные приложением, связанные с освобождением, высвобождением или сбросом неуправляемых ресурсов.

public void Dispose()

Dispose(bool)

Выполняет задачи, определенные приложением, связанные с освобождением, высвобождением или сбросом неуправляемых ресурсов.

protected virtual void Dispose(bool disposing)

Параметры

disposing bool

Указывает, следует ли освобождать управляемые ресурсы.

Extract(Stream)

Извлекает архив lzma в поток.

public void Extract(Stream destination)

Параметры

destination Stream

Поток для хранения декомпрессированных данных.

Примеры

using (FileStream sourceLzmaFile = File.Open(sourceFileName, FileMode.Open))
{
   using (FileStream extractedFile = File.Open(extractedFileName, FileMode.Create))
   {
       using (var archive = new LzmaArchive(sourceLzmaFile))
       {
           archive.Extract(extractedFile);
       }
   }
}

Исключения

InvalidOperationException

Заголовки архива и служебная информация не были прочитаны.

InvalidDataException

Архив поврежден.

ArgumentNullException

Поток назначения равен null.

ArgumentException

Поток назначения не поддерживает запись.

Extract(FileInfo)

Извлекает архив lzma в файл.

public void Extract(FileInfo fileInfo)

Параметры

fileInfo FileInfo

FileInfo для хранения декомпрессированных данных.

Примеры

using (FileStream lzmaFile = File.Open(sourceFileName, FileMode.Open))
{
    using (var archive = new LzmaArchive(lzmaFile))
    {
        archive.Extract(new FileInfo("extracted.bin"));
    }
}

Исключения

InvalidOperationException

Заголовки архива и служебная информация не были прочитаны.

SecurityException

У вызывающего нет необходимых разрешений для открытия fileInfo.

ArgumentException

Путь к файлу пуст или содержит только пробелы.

FileNotFoundException

Файл не найден.

UnauthorizedAccessException

Путь к файлу доступен только для чтения или является каталогом.

ArgumentNullException

fileInfo равно null.

DirectoryNotFoundException

Указанный путь недействителен, например, находится на немапированном диске.

IOException

Файл уже открыт.

InvalidDataException

Архив поврежден.

Extract(string)

Извлекает архив lzma в файл по пути.

public void Extract(string path)

Параметры

path string

Путь к файлу, который будет хранить декомпрессированные данные.

Примеры

using (FileStream lzmaFile = File.Open(sourceFileName, FileMode.Open))
{
    using (var archive = new LzmaArchive(lzmaFile))
    {
        archive.Extract("extracted.bin");
    }
}

Исключения

InvalidOperationException

Заголовки архива и служебная информация не были прочитаны.

ArgumentNullException

path равно null.

SecurityException

У вызывающего нет необходимых разрешений для доступа.

ArgumentException

path пуст, содержит только пробелы или содержит недопустимые символы.

UnauthorizedAccessException

Доступ к файлу path запрещен.

PathTooLongException

Указанный path, имя файла или оба превышают максимально допустимую длину, определенную системой. Например, на платформах Windows пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.

NotSupportedException

Файл по адресу path содержит двоеточие (:) в середине строки.

InvalidDataException

Архив поврежден.

ExtractToDirectory(string)

Извлекает содержимое архива в указанный каталог.

public void ExtractToDirectory(string destinationDirectory)

Параметры

destinationDirectory string

Путь к каталогу, в который будут помещены извлеченные файлы.

Примечания

Если каталог не существует, он будет создан.

Исключения

ArgumentNullException

destinationDirectory равно null.

PathTooLongException

Указанный путь, имя файла или оба превышают максимально допустимую длину, определенную системой. Например, на платформах Windows пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.

SecurityException

У вызывающего нет необходимых разрешений для доступа к существующему каталогу.

NotSupportedException

Если каталог не существует, путь содержит символ двоеточия (:) не как часть метки диска (“C:").

ArgumentException

destinationDirectory является строкой нулевой длины, содержит только пробелы или содержит один или несколько недопустимых символов. Вы можете запросить недопустимые символы, используя метод System.IO.Path.GetInvalidPathChars. -или- путь начинается с двоеточия или содержит только двоеточие (:).

IOException

Каталог, указанный в пути, является файлом. -или- Сетевое имя не известно.

InvalidDataException

Архив поврежден.

Save(Stream)

Сохраняет архив lzma в предоставленный поток.

public void Save(Stream output)

Параметры

output Stream

Поток назначения.

Примеры

using (FileStream lzmaFile = File.Open("archive.lzma", FileMode.Create))
{
    using (var archive = new LzmaArchive())
    {
        archive.SetSource("data.bin");
        archive.Save(lzmaFile);
     }
}

Примечания

output должен поддерживать позиционирование.

Исключения

ArgumentException

output не поддерживает позиционирование.

ArgumentNullException

output равно null.

Save(FileInfo)

Сохраняет архив lzma в предоставленный файл назначения.

public void Save(FileInfo destination)

Параметры

destination FileInfo

FileInfo, который будет открыт как поток назначения.

Примеры

using (var archive = new LzmaArchive()) 
{
    archive.SetSource(new FileInfo("data.bin"));
    archive.Save(new FileInfo("archive.lzma"));
}

Исключения

SecurityException

У вызывающего нет необходимых разрешений для открытия destination.

ArgumentException

Путь к файлу пуст или содержит только пробелы.

FileNotFoundException

Файл не найден.

UnauthorizedAccessException

Путь к файлу доступен только для чтения или является каталогом.

ArgumentNullException

destination равно null.

DirectoryNotFoundException

Указанный путь недействителен, например, находится на немапированном диске.

IOException

Файл уже открыт.

Save(string)

Сохраняет архив lzma в предоставленный файл назначения.

public void Save(string destinationFileName)

Параметры

destinationFileName string

Путь к архиву, который будет создан. Если указанное имя файла указывает на существующий файл, он будет перезаписан.

Примеры

using (var archive = new LzmaArchive()) 
{
    archive.SetSource(new FileInfo("data.bin"));
    archive.Save("result.lzma");
}

Исключения

ArgumentNullException

destinationFileName равно null.

SecurityException

У вызывающего нет необходимых разрешений для доступа.

ArgumentException

destinationFileName пуст, содержит только пробелы или содержит недопустимые символы.

UnauthorizedAccessException

Доступ к файлу destinationFileName запрещен.

PathTooLongException

Указанный destinationFileName, имя файла или оба превышают максимально допустимую длину, определенную системой. Например, на платформах Windows пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.

NotSupportedException

Файл по адресу destinationFileName содержит двоеточие (:) в середине строки.

SetSource(Stream)

Устанавливает содержимое, которое будет сжиматься в архиве.

public void SetSource(Stream source)

Параметры

source Stream

Входной поток для архива.

Примеры

using (var archive = new LzmaArchive())
{
    archive.SetSource(new MemoryStream(new byte[] { 0x00, 0xFF }));
    archive.Save("archive.lzma");
}

Исключения

ArgumentException

Поток source не поддерживает позиционирование.

SetSource(FileInfo)

Устанавливает содержимое, которое будет сжиматься в архиве.

public void SetSource(FileInfo fileInfo)

Параметры

fileInfo FileInfo

FileInfo, который будет открыт как входной поток.

Примеры

using (var archive = new LzmaArchive()) 
{
    archive.SetSource(new FileInfo("data.bin"));
    archive.Save("archive.lzma");
}

Исключения

SecurityException

У вызывающего нет необходимых разрешений для открытия fileInfo.

ArgumentException

Путь к файлу пуст или содержит только пробелы.

FileNotFoundException

Файл не найден.

UnauthorizedAccessException

Путь к файлу доступен только для чтения или является каталогом.

ArgumentNullException

fileInfo равно null.

DirectoryNotFoundException

Указанный путь недействителен, например, находится на немапированном диске.

IOException

Файл уже открыт.

SetSource(string)

Устанавливает содержимое, которое будет сжиматься в архиве.

public void SetSource(string sourcePath)

Параметры

sourcePath string

Путь к файлу, который будет открыт как входной поток.

Примеры

using (var archive = new LzmaArchive()) 
{
    archive.SetSource("data.bin");
    archive.Save("archive.lzma");
}

Исключения

ArgumentNullException

sourcePath равно null.

SecurityException

У вызывающего нет необходимых разрешений для доступа.

ArgumentException

sourcePath пуст, содержит только пробелы или содержит недопустимые символы.

UnauthorizedAccessException

Доступ к файлу sourcePath запрещен.

PathTooLongException

Указанный sourcePath, имя файла или оба превышают максимально допустимую длину, определенную системой. Например, на платформах Windows пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.

NotSupportedException

Файл по адресу sourcePath содержит двоеточие (:) в середине строки.

 Русский