Class Bzip2Archive
Название пространства: Aspose.Zip.Bzip2 Ассоциация: Aspose.Zip.dll (25.5.0)
Этот класс представляет собой файл архива bzip2. используйте его для составления или извлечения архивов bzip2.
public class Bzip2Archive : IArchive, IDisposable, IArchiveFileEntry
Inheritance
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
Преждевременный финал потока.
Неправильный байт подписки.
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
path’ is null.
Заказчик не имеет требуемого разрешения на доступ.
path" пустая, содержит только белые пространства или содержит недействительные символы.
Доступ к файлу path" отказывается.
Указанный path", имя файла, или оба превышают максимальную длину, установленную системой. Например, на платформах на базе Windows, пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Файл в path’ содержит колону (:) в середине строки.
Файл не найден.
Указанный маршрут является недействительным, например, находиться на немапированном диске.
Файл уже открыт.
Преждевременный финал потока.
Неправильный байт подписки.
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
destination’ does not support writing.
Extract(Стриг)
Экстрактируйте архив в файл по пути.
public FileInfo Extract(string path)
Parameters
path
string
Путь к целевому файлу.Если файл уже существует, он будет переписан.
Returns
Информация о извлеченном файле.
Exceptions
path’ is null.
Заказчик не имеет требуемого разрешения на доступ.
path" пустая, содержит только белые пространства или содержит недействительные символы.
Доступ к файлу path" отказывается.
Указанный path", имя файла, или оба превышают максимальную длину, установленную системой. Например, на платформах на базе Windows, пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Файл в path’ содержит колону (:) в середине строки.
Файл не найден.
Указанный маршрут является недействительным, например, находиться на немапированном диске.
Файл уже открыт.
ExtractToDirectory(Стриг)
Экстракт содержимого архива в предоставленный каталог.
public void ExtractToDirectory(string destinationDirectory)
Parameters
destinationDirectory
string
Путь к каталогу для размещения извлеченных файлов.
Remarks
Если каталог не существует, он будет создан.
Exceptions
destinationDirectory’ is null.
Например, на платформах, основанных на Windows, маршруты должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Заклинатель не имеет требуемого разрешения на доступ к существующему каталогу.
Если каталог не существует, то маршрут содержит колонный характер (:) который не является частью дисковой маркировки («C:»).
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 (:).
Каталог, указанный по маршруту, является файлом. -или- Название сети неизвестно.
Open()
Откроет архив для экстракции и обеспечивает поток с содержанием архива.
public Stream Open()
Returns
Проток, который представляет содержимое архива.
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
Источник данных, который должен быть архивирован, не предоставлен.
outputStream’ is not writable.
Источник файла читается только или является каталогом.
Указанный источник файла является недействительным, например, находиться на немапированном диске.
Источник файла уже открыт.
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
destinationFileName’ is null.
Заказчик не имеет требуемого разрешения на доступ.
destinationFileName’ является пустым, содержит только белые пространства или содержит недействительные символы.
Доступ к файлу destinationFileName’ отрицается.
Определенный destinationFileName’, имя файла, или оба превышают максимальную длину, установленную системой. Например, на платформах на базе Windows, маршруты должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Файл в 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
path’ is null.
Заказчик не имеет требуемого разрешения на доступ.
path" пустая, содержит только белые пространства или содержит недействительные символы.
Доступ к файлу path" отказывается.
Указанный path", имя файла, или оба превышают максимальную длину, установленную системой. Например, на платформах на базе Windows, пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Файл в 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.