Class ZstandardArchive

Class ZstandardArchive

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

Цей клас представляє файл архіву Zstandard. Використовуйте його для складання архівів Zstandard.

public class ZstandardArchive : IArchive, IDisposable, IArchiveFileEntry

Спадкування

objectZstandardArchive

Реалізує

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 для розпакування.

Винятки

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)

Витягує архів у наданий потік.

public void Extract(Stream destination)

Параметри

destination Stream

Потік призначення. Повинен бути записуваним.

Приклади

using (var archive = new GzipArchive("archive.zst"))
{
     archive.Extract(httpResponseStream);
}

Винятки

ArgumentException

destination не підтримує запис.

Extract(string)

Витягує архів у файл за шляхом.

public FileInfo Extract(string path)

Параметри

path string

Шлях до файлу призначення. Якщо файл вже існує, він буде перезаписаний.

Повертає

FileInfo

Інформація про витягнутий файл.

Винятки

ArgumentNullException

path є null.

SecurityException

Викликач не має необхідного дозволу для доступу.

ArgumentException

path є порожнім, містить лише пробіли або містить недопустимі символи.

UnauthorizedAccessException

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

PathTooLongException

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

NotSupportedException

Файл за path містить двокрапку (:) посередині рядка.

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

Вказана директорія за шляхом є файлом. -або- Ім’я мережі не відомо.

Open()

Відкриває архів для витягання та надає потік з вмістом архіву.

public Stream Open()

Повертає

Stream

Потік, який представляє вміст архіву.

Приклади

Витягує архів і копіює витягнутий вміст у файловий потік.

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 повинен бути записуваним.

Винятки

ArgumentException

outputStream не є записуваним.

InvalidOperationException

Джерело не було надано.

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");
}

Винятки

ArgumentNullException

destinationFileName є null.

SecurityException

Викликач не має необхідного дозволу для доступу.

ArgumentException

destinationFileName є порожнім, містить лише пробіли або містить недопустимі символи.

UnauthorizedAccessException

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

PathTooLongException

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

NotSupportedException

Файл за 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"));
}

Винятки

SecurityException

Викликач не має необхідного дозволу для відкриття destination.

ArgumentException

Шлях до файлу є порожнім або містить лише пробіли.

FileNotFoundException

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

UnauthorizedAccessException

Шлях до файлу є тільки для читання або є директорією.

ArgumentNullException

destination є null.

DirectoryNotFoundException

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

IOException

Файл вже відкритий.

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");
}

Винятки

ArgumentNullException

path є null.

SecurityException

Викликач не має необхідного дозволу для доступу.

ArgumentException

path є порожнім, містить лише пробіли або містить недопустимі символи.

UnauthorizedAccessException

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

PathTooLongException

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

NotSupportedException

Файл за path містить двокрапку (:) посередині рядка.

 Українська