Class LzmaArchive
Namespace: Aspose.Zip.LZMA
Assembly: Aspose.Zip.dll (25.1.0)
Этот класс представляет файл архива LZMA. Используйте его для создания или извлечения архивов LZMA.
public class LzmaArchive : IArchive, IDisposable, IArchiveFileEntry
Наследование
Реализует
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) для декомпрессии.
Исключения
source
не поддерживает позиционирование.
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) для декомпрессии.
Исключения
path
равно null.
У вызывающего нет необходимых разрешений для доступа.
path
пуст, содержит только пробелы или содержит недопустимые символы.
Доступ к файлу path
запрещен.
Указанный path
, имя файла или оба превышают максимально допустимую длину, определенную системой. Например, на платформах Windows пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Файл по адресу 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);
}
}
}
Исключения
Заголовки архива и служебная информация не были прочитаны.
Архив поврежден.
Поток назначения равен null.
Поток назначения не поддерживает запись.
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"));
}
}
Исключения
Заголовки архива и служебная информация не были прочитаны.
У вызывающего нет необходимых разрешений для открытия fileInfo
.
Путь к файлу пуст или содержит только пробелы.
Файл не найден.
Путь к файлу доступен только для чтения или является каталогом.
fileInfo
равно null.
Указанный путь недействителен, например, находится на немапированном диске.
Файл уже открыт.
Архив поврежден.
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");
}
}
Исключения
Заголовки архива и служебная информация не были прочитаны.
path
равно null.
У вызывающего нет необходимых разрешений для доступа.
path
пуст, содержит только пробелы или содержит недопустимые символы.
Доступ к файлу path
запрещен.
Указанный path
, имя файла или оба превышают максимально допустимую длину, определенную системой. Например, на платформах Windows пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Файл по адресу path
содержит двоеточие (:) в середине строки.
Архив поврежден.
ExtractToDirectory(string)
Извлекает содержимое архива в указанный каталог.
public void ExtractToDirectory(string destinationDirectory)
Параметры
destinationDirectory
string
Путь к каталогу, в который будут помещены извлеченные файлы.
Примечания
Если каталог не существует, он будет создан.
Исключения
destinationDirectory
равно null.
Указанный путь, имя файла или оба превышают максимально допустимую длину, определенную системой. Например, на платформах Windows пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
У вызывающего нет необходимых разрешений для доступа к существующему каталогу.
Если каталог не существует, путь содержит символ двоеточия (:) не как часть метки диска (“C:").
destinationDirectory
является строкой нулевой длины, содержит только пробелы или содержит один или несколько недопустимых символов. Вы можете запросить недопустимые символы, используя метод System.IO.Path.GetInvalidPathChars.
-или- путь начинается с двоеточия или содержит только двоеточие (:).
Каталог, указанный в пути, является файлом. -или- Сетевое имя не известно.
Архив поврежден.
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
должен поддерживать позиционирование.
Исключения
output
не поддерживает позиционирование.
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"));
}
Исключения
У вызывающего нет необходимых разрешений для открытия destination
.
Путь к файлу пуст или содержит только пробелы.
Файл не найден.
Путь к файлу доступен только для чтения или является каталогом.
destination
равно null.
Указанный путь недействителен, например, находится на немапированном диске.
Файл уже открыт.
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");
}
Исключения
destinationFileName
равно null.
У вызывающего нет необходимых разрешений для доступа.
destinationFileName
пуст, содержит только пробелы или содержит недопустимые символы.
Доступ к файлу destinationFileName
запрещен.
Указанный destinationFileName
, имя файла или оба превышают максимально допустимую длину, определенную системой. Например, на платформах Windows пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Файл по адресу 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");
}
Исключения
Поток 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");
}
Исключения
У вызывающего нет необходимых разрешений для открытия fileInfo
.
Путь к файлу пуст или содержит только пробелы.
Файл не найден.
Путь к файлу доступен только для чтения или является каталогом.
fileInfo
равно null.
Указанный путь недействителен, например, находится на немапированном диске.
Файл уже открыт.
SetSource(string)
Устанавливает содержимое, которое будет сжиматься в архиве.
public void SetSource(string sourcePath)
Параметры
sourcePath
string
Путь к файлу, который будет открыт как входной поток.
Примеры
using (var archive = new LzmaArchive())
{
archive.SetSource("data.bin");
archive.Save("archive.lzma");
}
Исключения
sourcePath
равно null.
У вызывающего нет необходимых разрешений для доступа.
sourcePath
пуст, содержит только пробелы или содержит недопустимые символы.
Доступ к файлу sourcePath
запрещен.
Указанный sourcePath
, имя файла или оба превышают максимально допустимую длину, определенную системой. Например, на платформах Windows пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Файл по адресу sourcePath
содержит двоеточие (:) в середине строки.