Class ZstandardArchive
Namespace: Aspose.Zip.Zstandard
Assembly: Aspose.Zip.dll (25.1.0)
Этот класс представляет файл архива Zstandard. Используйте его для создания архивов Zstandard.
public class ZstandardArchive : 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()
Конструкторы
ZstandardArchive()
Инициализирует новый экземпляр класса Aspose.Zip.Zstandard.ZstandardArchive, подготовленный для сжатия.
public ZstandardArchive()
Примеры
Следующий пример показывает, как сжать файл.
using (ZstandardArchive archive = new ZstandardArchive())
{
archive.SetSource("data.bin");
archive.Save("archive.zst");
}
ZstandardArchive(Stream, ZstandardLoadOptions)
Инициализирует новый экземпляр класса Aspose.Zip.Zstandard.ZstandardArchive, подготовленный для распаковки.
public ZstandardArchive(Stream sourceStream, ZstandardLoadOptions options = null)
Параметры
sourceStream
Stream
Источник архива.
options
ZstandardLoadOptions
Опции для загрузки архива.
Примеры
Открывает архив из потока и извлекает его в MemoryStream
var ms = new MemoryStream();
using (GzipArchive archive = new ZstandardArchive(File.OpenRead("archive.zst")))
archive.Open().CopyTo(ms);
Примечания
Этот конструктор не распаковывает. См. метод Aspose.Zip.Zstandard.ZstandardArchive.Open для распаковки.
ZstandardArchive(string, ZstandardLoadOptions)
Инициализирует новый экземпляр класса Aspose.Zip.Zstandard.ZstandardArchive.
public ZstandardArchive(string path, ZstandardLoadOptions options = null)
Параметры
path
string
Путь к файлу архива.
options
ZstandardLoadOptions
Опции для загрузки архива.
Примеры
Открывает архив из файла по пути и извлекает его в MemoryStream
var ms = new MemoryStream();
using (ZstandardArchive archive = new ZstandardArchive("archive.zst"))
archive.Open().CopyTo(ms);
Примечания
Этот конструктор не распаковывает. См. метод Aspose.Zip.Zstandard.ZstandardArchive.Open для распаковки.
Исключения
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)
Извлекает архив в предоставленный поток.
public void Extract(Stream destination)
Параметры
destination
Stream
Поток назначения. Должен быть записываемым.
Примеры
using (var archive = new GzipArchive("archive.zst"))
{
archive.Extract(httpResponseStream);
}
Исключения
destination
не поддерживает запись.
Extract(string)
Извлекает архив в файл по пути.
public FileInfo Extract(string path)
Параметры
path
string
Путь к файлу назначения. Если файл уже существует, он будет перезаписан.
Возвращает
Информация о извлеченном файле.
Исключения
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.
-или- путь начинается с двоеточия или содержит только двоеточие (:).
Директория, указанная в пути, является файлом. -или- Имя сети неизвестно.
Open()
Открывает архив для извлечения и предоставляет поток с содержимым архива.
public Stream Open()
Возвращает
Поток, представляющий содержимое архива.
Примеры
Извлекает архив и копирует извлеченное содержимое в файловый поток.
using (var archive = new ZstandardArchive("archive.zst"))
{
using (var extracted = File.Create("data.bin"))
{
var unpacked = archive.Open();
byte[] b = new byte[8192];
int bytesRead;
while (0 < (bytesRead = unpacked.Read(b, 0, b.Length)))
extracted.Write(b, 0, bytesRead);
}
}
Вы можете использовать метод Stream.CopyTo для .NET 4.0 и выше: `unpacked.CopyTo(extracted);`
Примечания
Чтение из потока для получения оригинального содержимого файла. См. раздел примеров.
Save(Stream, ZstandardSaveOptions)
Сохраняет архив в предоставленный поток.
public void Save(Stream outputStream, ZstandardSaveOptions settings = null)
Параметры
outputStream
Stream
Поток назначения.
settings
ZstandardSaveOptions
Необязательные настройки для составления архива.
Примеры
Записывает сжатые данные в поток http-ответа.
using (var archive = new ZstandardArchive())
{
archive.SetSource(new FileInfo("data.bin"));
archive.Save(httpResponse.OutputStream);
}
Примечания
outputStream
должен быть записываемым.
Исключения
outputStream
не записываемый.
Источник не был предоставлен.
Save(string, ZstandardSaveOptions)
Сохраняет архив в предоставленный файл назначения.
public void Save(string destinationFileName, ZstandardSaveOptions settings = null)
Параметры
destinationFileName
string
Путь к создаваемому архиву. Если указанное имя файла указывает на существующий файл, он будет перезаписан.
settings
ZstandardSaveOptions
Необязательные настройки для составления архива.
Примеры
using (var archive = new ZstandardArchive())
{
archive.SetSource(new FileInfo("data.bin"));
archive.Save("result.zst");
}
Исключения
destinationFileName
равно null.
У вызывающего нет необходимых разрешений для доступа.
destinationFileName
пуст, состоит только из пробелов или содержит недопустимые символы.
Доступ к файлу destinationFileName
запрещен.
Указанный destinationFileName
, имя файла или оба превышают максимальную длину, определенную системой. Например, на платформах Windows пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Файл по destinationFileName
содержит двоеточие (:) в середине строки.
Save(FileInfo, ZstandardSaveOptions)
Сохраняет архив в предоставленный файл назначения.
public void Save(FileInfo destination, ZstandardSaveOptions settings = null)
Параметры
destination
FileInfo
FileInfo, который будет открыт как поток назначения.
settings
ZstandardSaveOptions
Необязательные настройки для составления архива.
Примеры
using (var archive = new ZstandardArchive())
{
archive.SetSource(new FileInfo("data.bin"));
archive.Save(new FileInfo("archive.zst"));
}
Исключения
У вызывающего нет необходимых разрешений для открытия destination
.
Путь к файлу пуст или состоит только из пробелов.
Файл не найден.
Путь к файлу является только для чтения или является директорией.
destination
равно null.
Указанный путь недействителен, например, находится на неотображаемом диске.
Файл уже открыт.
SetSource(Stream)
Устанавливает содержимое, которое будет сжато в архиве.
public void SetSource(Stream source)
Параметры
source
Stream
Входной поток для архива.
Примеры
using (var archive = new ZstandardArchive())
{
archive.SetSource(new MemoryStream(new byte[] { 0x00, 0xFF }));
archive.Save("archive.zst");
}
SetSource(FileInfo)
Устанавливает содержимое, которое будет сжато в архиве.
public void SetSource(FileInfo fileInfo)
Параметры
fileInfo
FileInfo
Ссылка на файл, который будет сжат.
Примеры
using (var archive = new ZstandardArchive())
{
archive.SetSource(new FileInfo("data.bin"));
archive.Save("archive.zst");
}
SetSource(string)
Устанавливает содержимое, которое будет сжато в архиве.
public void SetSource(string path)
Параметры
path
string
Путь к файлу, который будет сжат.
Примеры
using (var archive = new ZstandardArchive())
{
archive.SetSource("data.bin");
archive.Save("archive.zst");
}
Исключения
path
равно null.
У вызывающего нет необходимых разрешений для доступа.
path
пуст, состоит только из пробелов или содержит недопустимые символы.
Доступ к файлу path
запрещен.
Указанный path
, имя файла или оба превышают максимальную длину, определенную системой. Например, на платформах Windows пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Файл по path
содержит двоеточие (:) в середине строки.