Class Bzip2Archive

Class Bzip2Archive

Название пространства: Aspose.Zip.Bzip2 Ассоциация: Aspose.Zip.dll (25.5.0)

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

public class Bzip2Archive : IArchive, IDisposable, IArchiveFileEntry

Inheritance

object Bzip2Archive

Implements

IArchive , IDisposable , IArchiveFileEntry

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

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

Remarks

bzip2 компрессирует файлы с помощью блока Burrows-Wheeler, сортирующего алгоритм компрессии текста, и кодирования Huffman.

Constructors

Bzip2Archive()

Инициализует новую инстанцию класса Aspose.Zip.Bzip2.Bzip2Archive, подготовленного для компрессии.

public Bzip2Archive()

Examples

Следующий пример показывает, как компрессировать файл.

using (Bzip2Archive archive = new Bzip2Archive()) 
{
    archive.SetSource("data.bin");
    archive.Save("archive.bz2");
}

Bzip2Archive(Сток, Bzip2LoadOptions)

Инициализует новую инстанцию класса Aspose.Zip.Bzip2.Bzip2Archive, подготовленного для декомпрессии.

public Bzip2Archive(Stream sourceStream, Bzip2LoadOptions loadOptions = null)

Parameters

sourceStream Stream

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

loadOptions Bzip2LoadOptions

С возможностями загрузки архивов.

Examples

Откройте архив из потока и выведите его в

var ms = new MemoryStream();
using (Bzip2Archive archive = new Bzip2Archive(File.OpenRead("archive.bz2")))
  archive.Open().CopyTo(ms);

Remarks

Этот конструктор не декомпрессирует. см. Aspose.Zip.Bzip2.Bzip2Archive.Open метод декомпрессии.

Exceptions

EndOfStreamException

Преждевременный финал потока.

InvalidDataException

Неправильный байт подписки.

Bzip2Archive(Оригинальное название: Bzip2LoadOptions)

Инициализует новую инстанцию класса Aspose.Zip.Bzip2.Bzip2Archive, подготовленного для декомпрессии.

public Bzip2Archive(string path, Bzip2LoadOptions loadOptions = null)

Parameters

path string

Путь к архиву.

loadOptions Bzip2LoadOptions

С возможностями загрузки архивов.

Examples

Откройте архив из файла по пути и выведите его в

var ms = new MemoryStream();
using (Bzip2Archive archive = new Bzip2Archive("archive.bz2"))
  archive.Open().CopyTo(ms);

Remarks

Этот конструктор не декомпрессирует. см. Aspose.Zip.Bzip2.Bzip2Archive.Open метод декомпрессии.

Exceptions

ArgumentNullException

path’ is null.

SecurityException

Заказчик не имеет требуемого разрешения на доступ.

ArgumentException

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

UnauthorizedAccessException

Доступ к файлу path" отказывается.

PathTooLongException

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

NotSupportedException

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

FileNotFoundException

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

DirectoryNotFoundException

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

IOException

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

EndOfStreamException

Преждевременный финал потока.

InvalidDataException

Неправильный байт подписки.

Methods

Dispose()

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

public void Dispose()

Dispose(Боол)

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

protected virtual void Dispose(bool disposing)

Parameters

disposing bool

Следует ли использовать управляемые ресурсы.

Extract(Stream)

Экстрактирует архив в предоставленный поток.

public void Extract(Stream destination)

Parameters

destination Stream

Достопримечательности. должно быть написано.

Examples

using (Bzip2Archive archive = new Bzip2Archive("archive.bz2"))
{
     archive.Extract(httpResponseStream);
}

Exceptions

ArgumentException

destination’ does not support writing.

Extract(Стриг)

Экстрактируйте архив в файл по пути.

public FileInfo Extract(string path)

Parameters

path string

Путь к целевому файлу.Если файл уже существует, он будет переписан.

Returns

FileInfo

Информация о извлеченном файле.

Exceptions

ArgumentNullException

path’ is null.

SecurityException

Заказчик не имеет требуемого разрешения на доступ.

ArgumentException

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

UnauthorizedAccessException

Доступ к файлу path" отказывается.

PathTooLongException

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

NotSupportedException

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

FileNotFoundException

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

DirectoryNotFoundException

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

IOException

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

ExtractToDirectory(Стриг)

Экстракт содержимого архива в предоставленный каталог.

public void ExtractToDirectory(string destinationDirectory)

Parameters

destinationDirectory string

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

Remarks

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

Exceptions

ArgumentNullException

destinationDirectory’ is null.

PathTooLongException

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

SecurityException

Заклинатель не имеет требуемого разрешения на доступ к существующему каталогу.

NotSupportedException

Если каталог не существует, то маршрут содержит колонный характер (:) который не является частью дисковой маркировки («C:»).

ArgumentException

destinationDirectory’ is a zero-length string, contains only white space, or contains one or more invalid characters. You can query for invalid characters by using the System.IO.Path.GetInvalidPathChars method.-or- path is prefixed with, or contains, only a colon character (:).

IOException

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

Open()

Откроет архив для экстракции и обеспечивает поток с содержанием архива.

public Stream Open()

Returns

Stream

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

Examples

Использование :Stream decompressed = archive.Open();

.NET 4.0 и выше - используйте метод Stream.CopyTo:decompressed.CopyTo(httpResponse.OutputStream)

.NET 3.5 и ранее - копируйте байты вручную:

byte[] buffer = new byte[8192];
int bytesRead;
while (0 < (bytesRead = decompressed.Read(buffer, 0, buffer.Length)))
 fileStream.Write(buffer, 0, bytesRead);
```</p>

#### Remarks

Read from the stream to get the original content of the file. See examples section.

### <a id="Aspose_Zip_Bzip2_Bzip2Archive_Save_System_IO_Stream_Aspose_Zip_Bzip2_Bzip2SaveOptions_"></a> Save\(Stream, Bzip2SaveOptions\)

Saves archive to the stream provided.

```csharp
public void Save(Stream outputStream, Bzip2SaveOptions saveOptions = null)

Parameters

outputStream Stream

Достопримечательности потока.

saveOptions Bzip2SaveOptions

Опции для сохранения архива bzip2. если не указано, будет использован размер блока 900 Кб.

Examples

Напишите компрессированные данные в ответный поток http.

using (var archive = new Bzip2Archive()) 
{
    archive.SetSource(new FileInfo("data.bin"));
    archive.Save(httpResponse.OutputStream);
}

Remarks

Он должен быть письменным.

Exceptions

InvalidOperationException

Источник данных, который должен быть архивирован, не предоставлен.

ArgumentException

outputStream’ is not writable.

UnauthorizedAccessException

Источник файла читается только или является каталогом.

DirectoryNotFoundException

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

IOException

Источник файла уже открыт.

Save(Оригинальное название: Bzip2SaveOptions)

Сохранить архив до предоставленного целевого файла.

public void Save(string destinationFileName, Bzip2SaveOptions saveOptions = null)

Parameters

destinationFileName string

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

saveOptions Bzip2SaveOptions

Опции для сохранения архива bzip2. если не указано, будет использован размер блока 900 Кб.

Examples

Напишите компрессированные данные для файла.

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

Exceptions

ArgumentNullException

destinationFileName’ is null.

SecurityException

Заказчик не имеет требуемого разрешения на доступ.

ArgumentException

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

UnauthorizedAccessException

Доступ к файлу destinationFileName’ отрицается.

PathTooLongException

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

NotSupportedException

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

SetSource(Stream)

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

public void SetSource(Stream source)

Parameters

source Stream

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

Examples

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

SetSource(FileInfo)

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

public void SetSource(FileInfo fileInfo)

Parameters

fileInfo FileInfo

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

Examples

using (Bzip2Archive archive = new Bzip2Archive()) 
{
    archive.SetSource(new FileInfo("data.bin"));
    archive.Save("archive.bz2");
}

SetSource(Стриг)

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

public void SetSource(string path)

Parameters

path string

Путь к файлу для компрессии.

Examples

using (Bzip2Archive archive = new Bzip2Archive()) 
{
    archive.SetSource("data.bin");
    archive.Save("archive.bz2");
}

Exceptions

ArgumentNullException

path’ is null.

SecurityException

Заказчик не имеет требуемого разрешения на доступ.

ArgumentException

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

UnauthorizedAccessException

Доступ к файлу path" отказывается.

PathTooLongException

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

NotSupportedException

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

SetSource(ТАРФОРМАТ ТАРФОРМАТ)

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

public void SetSource(TarArchive tarArchive, TarFormat format = TarFormat.UsTar)

Parameters

tarArchive TarArchive

Архивы должны быть сжаты.

format TarFormat

Определите формат Tar Header.

Examples

using (var tarArchive = new TarArchive())
{
    tarArchive.CreateEntry("first.bin", "data1.bin");
    tarArchive.CreateEntry("second.bin", "data2.bin");
    using (var bzippedArchive = new Bzip2Archive())
    {
        bzippedArchive.SetSource(tarArchive);
        bzippedArchive.Save("archive.tar.bz2");
    }
}

Remarks

Используйте этот метод для составления совместного архива tar.bz2.

SetSource(CpioArchive и CpioFormat)

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

public void SetSource(CpioArchive cpioArchive, CpioFormat format = CpioFormat.OldAscii)

Parameters

cpioArchive CpioArchive

Архив для компрессии.

format CpioFormat

Определение формата cpio header.

Examples

using (var cpioArchive = new CpioArchive())
{
    cpioArchive.CreateEntry("first.bin", "data1.bin");
    cpioArchive.CreateEntry("second.bin", "data2.bin");
    using (var bzippedArchive = new Bzip2Archive())
    {
        bzippedArchive.SetSource(cpioArchive);
        bzippedArchive.Save("archive.cpio.bz2");
    }
}

Remarks

Используйте этот метод для составления совместного архива cpio.bz2.

 Русский