Class TarArchive

Class TarArchive

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

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

public class TarArchive : IArchive, IDisposable

Наслідування

objectTarArchive

Реалізує

IArchive, IDisposable

Наслідувані члени

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

Конструктори

TarArchive()

Ініціалізує новий екземпляр класу Aspose.Zip.Tar.TarArchive.

public TarArchive()

Приклади

Наступний приклад показує, як стиснути файл.

using (var archive = new TarArchive())
{
    archive.CreateEntry("first.bin", "data.bin");
    archive.Save("archive.tar");
}

TarArchive(Stream)

Ініціалізує новий екземпляр класу Aspose.Zip.Archive та складає список записів, які можуть бути витягнуті з архіву.

public TarArchive(Stream sourceStream)

Параметри

sourceStream Stream

Джерело архіву. Він повинен бути доступним для пошуку.

Приклади

Наступний приклад показує, як витягти всі записи в каталог.

using (var archive = new TarArchive(File.OpenRead("archive.tar")))
{ 
   archive.ExtractToDirectory("C:\extracted");
}

Примітки

Цей конструктор не розпаковує жодну запис. Дивіться метод Aspose.Zip.Tar.TarEntry.Open для розпаковки.

Виключення

InvalidDataException

sourceStream не доступний для пошуку.

TarArchive(string)

Ініціалізує новий екземпляр класу Aspose.Zip.Tar.TarArchive та складає список записів, які можуть бути витягнуті з архіву.

public TarArchive(string path)

Параметри

path string

Шлях до файлу архіву.

Приклади

Наступний приклад показує, як витягти всі записи в каталог.

using (var archive = new TarArchive("archive.tar")) 
{ 
   archive.ExtractToDirectory("C:\extracted");
}

Примітки

Цей конструктор не розпаковує жодну запис. Дивіться метод Aspose.Zip.Tar.TarEntry.Open для розпаковки.

Виключення

ArgumentNullException

path є null.

SecurityException

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

ArgumentException

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

UnauthorizedAccessException

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

PathTooLongException

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

NotSupportedException

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

FileNotFoundException

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

DirectoryNotFoundException

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

IOException

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

Властивості

Entries

Отримує записи типу Aspose.Zip.Tar.TarEntry, які складають архів.

public ReadOnlyCollection<tarentry> Entries { get; }

Значення властивості

ReadOnlyCollection<TarEntry&gt;

Методи

CreateEntries(DirectoryInfo, bool)

Додає до архіву всі файли та каталоги рекурсивно в зазначеному каталозі.

public TarArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true)

Параметри

directory DirectoryInfo

Каталог для стиснення.

includeRootDirectory bool

Вказує, чи включати кореневий каталог.

Повертає

TarArchive

Архів з складеними записами.

Приклади

using (FileStream tarFile = File.Open("archive.tar", FileMode.Create))
{
    using (var archive = new TarArchive())
    {
        archive.CreateEntries(new DirectoryInfo("C:\folder"), false);
        archive.Save(tarFile);
    }
}

CreateEntries(string, bool)

Додає до архіву всі файли та каталоги рекурсивно в зазначеному каталозі.

public TarArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true)

Параметри

sourceDirectory string

Каталог для стиснення.

includeRootDirectory bool

Вказує, чи включати кореневий каталог.

Повертає

TarArchive

Архів з складеними записами.

Приклади

using (FileStream tarFile = File.Open("archive.tar", FileMode.Create))
{
    using (var archive = new TarArchive())
    {
        archive.CreateEntries("C:\folder", false);
        archive.Save(tarFile);
    }
}

Виключення

ArgumentNullException

sourceDirectory є null.

SecurityException

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

ArgumentException

sourceDirectory містить недійсні символи, такі як “, <, > або |.

PathTooLongException

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

CreateEntry(string, Stream, FileSystemInfo)

Створити єдиний запис в архіві.

public TarEntry CreateEntry(string name, Stream source, FileSystemInfo fileInfo = null)

Параметри

name string

Ім’я запису.

source Stream

Вхідний потік для запису.

fileInfo FileSystemInfo

Метадані файлу або папки для стиснення.

Повертає

TarEntry

Екземпляр TarEntry.

Приклади

using (var archive = new TarArchive())
{
   archive.CreateEntry("bytes", new MemoryStream(new byte[] {0x00, 0xFF}));
   archive.Save(tarFile);
}

Примітки

Ім'я запису встановлюється лише в параметрі name. Ім'я файлу, наведене в параметрі fileInfo, не впливає на ім'я запису.

fileInfo може посилатися на System.IO.DirectoryInfo, якщо запис є каталогом.

Виключення

PathTooLongException

name занадто довге для tar відповідно до стандарту IEEE 1003.1-1998.

ArgumentException

Ім’я файлу, як частина name, перевищує 100 символів.

CreateEntry(string, FileInfo, bool)

Створити єдиний запис в архіві.

public TarEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false)

Параметри

name string

Ім’я запису.

fileInfo FileInfo

Метадані файлу або папки для стиснення.

openImmediately bool

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

Повертає

TarEntry

Екземпляр TarEntry.

Приклади

FileInfo fi = new FileInfo("data.bin");
using (var archive = new TarArchive())
{
   archive.CreateEntry("data.bin", fi);
   archive.Save(tarFile);
}

Примітки

Ім'я запису встановлюється лише в параметрі name. Ім'я файлу, наведене в параметрі fileInfo, не впливає на ім'я запису.

fileInfo може посилатися на System.IO.DirectoryInfo, якщо запис є каталогом.

Якщо файл відкрито негайно з параметром openImmediately, він буде заблокований, поки архів не буде видалено.

Виключення

PathTooLongException

name занадто довге для tar відповідно до стандарту IEEE 1003.1-1998.

ArgumentException

Ім’я файлу, як частина name, перевищує 100 символів.

CreateEntry(string, string, bool)

Створити єдиний запис в архіві.

public TarEntry CreateEntry(string name, string path, bool openImmediately = false)

Параметри

name string

Ім’я запису.

path string

Шлях до файлу, що підлягає стисненню.

openImmediately bool

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

Повертає

TarEntry

Екземпляр TarEntry.

Приклади

using (var archive = new TarArchive())
{
    archive.CreateEntry("first.bin", "data.bin");
    archive.Save(outputTarFile);
}

Примітки

Ім'я запису встановлюється лише в параметрі name. Ім'я файлу, наведене в параметрі path, не впливає на ім'я запису.

Якщо файл відкрито негайно з параметром openImmediately, він буде заблокований, поки архів не буде видалено.

Виключення

ArgumentNullException

path є null.

SecurityException

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

ArgumentException

path є порожнім, містить лише пробіли або містить недійсні символи. - або - Ім’я файлу, як частина name, перевищує 100 символів.

UnauthorizedAccessException

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

PathTooLongException

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

NotSupportedException

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

DeleteEntry(TarEntry)

Видаляє перше входження конкретної записи зі списку записів.

public TarArchive DeleteEntry(TarEntry entry)

Параметри

entry TarEntry

Запис, яку потрібно видалити зі списку записів.

Повертає

TarArchive

Архів з видаленою записю.

Приклади

Ось як ви можете видалити всі записи, крім останньої:

using (var archive = new TarArchive("archive.tar"))
{
    while (archive.Entries.Count &gt; 1)
        archive.DeleteEntry(archive.Entries[0]);
    archive.Save(outputTarFile);
}

DeleteEntry(int)

Видаляє запис зі списку записів за індексом.

public TarArchive DeleteEntry(int entryIndex)

Параметри

entryIndex int

Нульовий індекс запису, який потрібно видалити.

Повертає

TarArchive

Архів з видаленою записю.

Приклади

using (var archive = new TarArchive("two_files.tar"))
{
    archive.DeleteEntry(0);
    archive.Save("single_file.tar");
}

Виключення

ArgumentOutOfRangeException

entryIndex менше 0.-або- entryIndex дорівнює або більше Entries count.

Dispose()

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

public void Dispose()

Dispose(bool)

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

protected virtual void Dispose(bool disposing)

Параметри

disposing bool

Чи слід звільняти керовані ресурси.

ExtractToDirectory(string)

Витягує всі файли з архіву в зазначений каталог.

public void ExtractToDirectory(string destinationDirectory)

Параметри

destinationDirectory string

Шлях до каталогу, куди помістити витягнуті файли.

Приклади

using (var archive = new TarArchive("archive.tar")) 
{ 
   archive.ExtractToDirectory("C:\extracted");
}

Примітки

Якщо каталог не існує, він буде створений.

Виключення

ArgumentNullException

path є null

PathTooLongException

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

SecurityException

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

NotSupportedException

Якщо каталог не існує, шлях містить символ двокрапки (:) який не є частиною мітки диска (“C:").

ArgumentException

path є рядком нульової довжини, містить лише пробіли або містить один або більше недійсних символів. Ви можете запитати недійсні символи, використовуючи метод System.IO.Path.GetInvalidPathChars. -або- path префіксований або містить лише символ двокрапки (:).

IOException

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

FromGZip(Stream)

Витягує наданий gzip архів і складає Aspose.Zip.Tar.TarArchive з витягнутими даними.

Важливо: gzip архів повністю витягується в цьому методі, його вміст зберігається внутрішньо. Остерігайтеся споживання пам'яті.

public static TarArchive FromGZip(Stream source)

Параметри

source Stream

Джерело архіву.

Повертає

TarArchive

Екземпляр Aspose.Zip.Tar.TarArchive

Примітки

Потік витягнення GZip за своєю природою не доступний для пошуку. Архів Tar надає можливість витягувати довільний запис, тому він повинен працювати з доступним для пошуку потоком під капотом.

Виключення

InvalidDataException

Архів пошкоджено.

FromGZip(string)

Витягує наданий gzip архів і складає Aspose.Zip.Tar.TarArchive з витягнутими даними.

Важливо: gzip архів повністю витягується в цьому методі, його вміст зберігається внутрішньо. Остерігайтеся споживання пам'яті.

public static TarArchive FromGZip(string path)

Параметри

path string

Шлях до файлу архіву.

Повертає

TarArchive

Екземпляр Aspose.Zip.Tar.TarArchive

Примітки

Потік витягнення GZip за своєю природою не доступний для пошуку. Архів Tar надає можливість витягувати довільний запис, тому він повинен працювати з доступним для пошуку потоком під капотом.

Виключення

InvalidDataException

Архів пошкоджено.

FromLZMA(Stream)

Витягує наданий LZMA архів і складає Aspose.Zip.Tar.TarArchive з витягнутими даними.

Важливо: LZMA архів повністю витягується в цьому методі, його вміст зберігається внутрішньо. Остерігайтеся споживання пам'яті.

public static TarArchive FromLZMA(Stream source)

Параметри

source Stream

Джерело архіву.

Повертає

TarArchive

Екземпляр Aspose.Zip.Tar.TarArchive

Примітки

Потік витягнення LZMA за своєю природою не доступний для пошуку. Архів Tar надає можливість витягувати довільний запис, тому він повинен працювати з доступним для пошуку потоком під капотом.

FromLZMA(string)

Витягує наданий LZMA архів і складає Aspose.Zip.Tar.TarArchive з витягнутими даними.

Важливо: LZMA архів повністю витягується в цьому методі, його вміст зберігається внутрішньо. Остерігайтеся споживання пам'яті.

public static TarArchive FromLZMA(string path)

Параметри

path string

Шлях до файлу архіву.

Повертає

TarArchive

Екземпляр Aspose.Zip.Tar.TarArchive

Примітки

Потік витягнення LZMA за своєю природою не доступний для пошуку. Архів Tar надає можливість витягувати довільний запис, тому він повинен працювати з доступним для пошуку потоком під капотом.

FromLZip(Stream)

Витягує наданий lzip архів і складає Aspose.Zip.Tar.TarArchive з витягнутими даними.

Важливо: lzip архів повністю витягується в цьому методі, його вміст зберігається внутрішньо. Остерігайтеся споживання пам'яті.

public static TarArchive FromLZip(Stream source)

Параметри

source Stream

Джерело архіву.

Повертає

TarArchive

Екземпляр Aspose.Zip.Tar.TarArchive

Примітки

Потік витягнення lzip за своєю природою не доступний для пошуку. Архів Tar надає можливість витягувати довільний запис, тому він повинен працювати з доступним для пошуку потоком під капотом.

FromLZip(string)

Витягує наданий lzip архів і складає Aspose.Zip.Tar.TarArchive з витягнутими даними.

Важливо: lzip архів повністю витягується в цьому методі, його вміст зберігається внутрішньо. Остерігайтеся споживання пам'яті.

public static TarArchive FromLZip(string path)

Параметри

path string

Шлях до файлу архіву.

Повертає

TarArchive

Екземпляр Aspose.Zip.Tar.TarArchive

Примітки

Потік витягнення lzip за своєю природою не доступний для пошуку. Архів Tar надає можливість витягувати довільний запис, тому він повинен працювати з доступним для пошуку потоком під капотом.

FromXz(Stream)

Витягує наданий xz формат архів і складає Aspose.Zip.Tar.TarArchive з витягнутими даними.

Важливо: xz архів повністю витягується в цьому методі, його вміст зберігається внутрішньо. Остерігайтеся споживання пам'яті.

public static TarArchive FromXz(Stream source)

Параметри

source Stream

Джерело архіву.

Повертає

TarArchive

Екземпляр Aspose.Zip.Tar.TarArchive

Примітки

Архів Tar надає можливість витягувати довільний запис, тому він повинен працювати з доступним для пошуку потоком під капотом.

FromXz(string)

Витягує наданий xz формат архів і складає Aspose.Zip.Tar.TarArchive з витягнутими даними.

Важливо: xz архів повністю витягується в цьому методі, його вміст зберігається внутрішньо. Остерігайтеся споживання пам'яті.

public static TarArchive FromXz(string path)

Параметри

path string

Шлях до файлу архіву.

Повертає

TarArchive

Екземпляр Aspose.Zip.Tar.TarArchive

Примітки

Архів Tar надає можливість витягувати довільний запис, тому він повинен працювати з доступним для пошуку потоком під капотом.

FromZ(Stream)

Витягує наданий Z формат архів і складає Aspose.Zip.Tar.TarArchive з витягнутими даними.

Важливо: Z архів повністю витягується в цьому методі, його вміст зберігається внутрішньо. Остерігайтеся споживання пам'яті.

public static TarArchive FromZ(Stream source)

Параметри

source Stream

Джерело архіву.

Повертає

TarArchive

Екземпляр Aspose.Zip.Tar.TarArchive

Примітки

Архів Tar надає можливість витягувати довільний запис, тому він повинен працювати з доступним для пошуку потоком під капотом.

FromZ(string)

Витягує наданий Z формат архів і складає Aspose.Zip.Tar.TarArchive з витягнутими даними.

Важливо: Z архів повністю витягується в цьому методі, його вміст зберігається внутрішньо. Остерігайтеся споживання пам'яті.

public static TarArchive FromZ(string path)

Параметри

path string

Шлях до файлу архіву.

Повертає

TarArchive

Екземпляр Aspose.Zip.Tar.TarArchive

Примітки

Архів Tar надає можливість витягувати довільний запис, тому він повинен працювати з доступним для пошуку потоком під капотом.

FromZstandard(Stream)

Витягує наданий Zstandard архів і складає Aspose.Zip.Tar.TarArchive з витягнутими даними.

Важливо: Zstandard архів повністю витягується в цьому методі, його вміст зберігається внутрішньо. Остерігайтеся споживання пам'яті.

public static TarArchive FromZstandard(Stream source)

Параметри

source Stream

Джерело архіву.

Повертає

TarArchive

Екземпляр Aspose.Zip.Tar.TarArchive

Виключення

IOException

Потік Zstandard пошкоджений або нечитабельний.

InvalidDataException

Дані пошкоджені.

FromZstandard(string)

Витягує наданий Zstandard архів і складає Aspose.Zip.Tar.TarArchive з витягнутими даними.

Важливо: Zstandard архів повністю витягується в цьому методі, його вміст зберігається внутрішньо. Остерігайтеся споживання пам'яті.

public static TarArchive FromZstandard(string path)

Параметри

path string

Шлях до файлу архіву.

Повертає

TarArchive

Екземпляр Aspose.Zip.Tar.TarArchive

Виключення

IOException

Потік Zstandard пошкоджений або нечитабельний.

InvalidDataException

Дані пошкоджені.

Save(Stream, TarFormat?)

Зберігає архів у наданому потоці.

public void Save(Stream output, TarFormat? format = null)

Параметри

output Stream

Потік призначення.

format TarFormat?

Визначає формат заголовка tar. Значення null буде трактуватися як USTar, коли це можливо.

Приклади

using (FileStream tarFile = File.Open("archive.tar", FileMode.Create))
{
    using (var archive = new TarArchive())
    {
        archive.CreateEntry("entry1", "data.bin");
        archive.Save(tarFile);
    }
}

Примітки

output повинен бути записуваним.

Виключення

ArgumentException

output не записуваний. - або - output є тим самим потоком, з якого ми витягуємо. - АБО - Неможливо зберегти архів у format через обмеження формату.

Save(string, TarFormat?)

Зберігає архів у вказаному файлі за шляхом.

public void Save(string destinationFileName, TarFormat? format = null)

Параметри

destinationFileName string

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

format TarFormat?

Визначає формат заголовка tar. Значення null буде трактуватися як USTar, коли це можливо.

Приклади

using (var archive = new TarArchive())
{
    archive.CreateEntry("entry1", "data.bin");        
    archive.Save("myarchive.tar");
}

Примітки

Можна зберегти архів у тому ж шляху, з якого він був завантажений. Однак, це не рекомендується, оскільки цей підхід використовує копіювання у тимчасовий файл.

Виключення

ArgumentException

destinationFileName є рядком нульової довжини, містить лише пробіли або містить один або більше недійсних символів, визначених System.IO.Path.InvalidPathChars.

ArgumentNullException

destinationFileName є null.

PathTooLongException

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

DirectoryNotFoundException

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

IOException

Сталася помилка вводу/виводу під час відкриття файлу.

UnauthorizedAccessException

destinationFileName вказав файл, який є лише для читання, і доступ не є Read.-або- шлях вказує на каталог.-або- Виклик не має необхідного дозволу.

NotSupportedException

destinationFileName має недійсний формат.

FileNotFoundException

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

SaveGzipped(Stream, TarFormat?)

Зберігає архів у потоці з gzip стисненням.

public void SaveGzipped(Stream output, TarFormat? format = null)

Параметри

output Stream

Потік призначення.

format TarFormat?

Визначає формат заголовка tar. Значення null буде трактуватися як USTar, коли це можливо.

Приклади

using (FileStream result = File.OpenWrite("result.tar.gz"))
{
    using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
    {
        using (var archive = new TarArchive())
        {
            archive.CreateEntry("entry.bin", source);
            archive.SaveGzipped(result);
        }
    }
}

Примітки

output повинен бути записуваним.

Виключення

ArgumentNullException

output є null.

ArgumentException

output не записуваний.

SaveGzipped(string, TarFormat?)

Зберігає архів у файлі за шляхом з gzip стисненням.

public void SaveGzipped(string path, TarFormat? format = null)

Параметри

path string

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

format TarFormat?

Визначає формат заголовка tar. Значення null буде трактуватися як USTar, коли це можливо.

Приклади

using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
    using (var archive = new TarArchive())
    {
        archive.CreateEntry("entry.bin", source);
        archive.SaveGzipped("result.tar.gz");
    }
}

SaveLZMACompressed(Stream, TarFormat?)

Зберігає архів у потоці з LZMA стисненням.

public void SaveLZMACompressed(Stream output, TarFormat? format = null)

Параметри

output Stream

Потік призначення.

format TarFormat?

Визначає формат заголовка tar. Значення null буде трактуватися як USTar, коли це можливо.

Приклади

using (FileStream result = File.OpenWrite("result.tar.lzma"))
{
    using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
    {
        using (var archive = new TarArchive())
        {
            archive.CreateEntry("entry.bin", source);
            archive.SaveLZMACompressed(result);
        }
    }
}

Примітки

output повинен бути записуваним.

Важливо: архів tar складається, а потім стискається в цьому методі, його вміст зберігається внутрішньо. Остерігайтеся споживання пам'яті.

Виключення

ArgumentNullException

output є null.

ArgumentException

output не записуваний.

SaveLZMACompressed(string, TarFormat?)

Зберігає архів у файлі за шляхом з lzma стисненням.

public void SaveLZMACompressed(string path, TarFormat? format = null)

Параметри

path string

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

format TarFormat?

Визначає формат заголовка tar. Значення null буде трактуватися як USTar, коли це можливо.

Приклади

using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
    using (var archive = new TarArchive())
    {
        archive.CreateEntry("entry.bin", source);
        archive.SaveLZMACompressed("result.tar.lzma");
    }
}

Примітки

Важливо: архів tar складається, а потім стискається в цьому методі, його вміст зберігається внутрішньо. Остерігайтеся споживання пам’яті.

SaveLzipped(Stream, TarFormat?)

Зберігає архів у потоці з lzip стисненням.

public void SaveLzipped(Stream output, TarFormat? format = null)

Параметри

output Stream

Потік призначення.

format TarFormat?

Визначає формат заголовка tar. Значення null буде трактуватися як USTar, коли це можливо.

Приклади

using (FileStream result = File.OpenWrite("result.tar.lz"))
{
    using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
    {
        using (var archive = new TarArchive())
        {
            archive.CreateEntry("entry.bin", source);
            archive.SaveLzipped(result);
        }
    }
}

Примітки

output повинен бути записуваним.

Виключення

ArgumentNullException

output є null.

ArgumentException

output не записуваний.

SaveLzipped(string, TarFormat?)

Зберігає архів у файлі за шляхом з lzip стисненням.

public void SaveLzipped(string path, TarFormat? format = null)

Параметри

path string

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

format TarFormat?

Визначає формат заголовка tar. Значення null буде трактуватися як USTar, коли це можливо.

Приклади

using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
    using (var archive = new TarArchive())
    {
        archive.CreateEntry("entry.bin", source);
        archive.SaveGzipped("result.tar.lz");
    }
}

SaveXzCompressed(Stream, TarFormat?, XzArchiveSettings)

Зберігає архів у потоці з xz стисненням.

public void SaveXzCompressed(Stream output, TarFormat? format = null, XzArchiveSettings settings = null)

Параметри

output Stream

Потік призначення.

format TarFormat?

Визначає формат заголовка tar. Значення null буде трактуватися як USTar, коли це можливо.

settings XzArchiveSettings

Набір налаштувань конкретного xz архіву: розмір словника, розмір блоку, тип перевірки.

Приклади

using (FileStream result = File.OpenWrite("result.tar.xz"))
{
    using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
    {
        using (var archive = new TarArchive())
        {
            archive.CreateEntry("entry.bin", source);
            archive.SaveXzCompressed(result);
        }
    }
}

Примітки

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

Виключення

ArgumentNullException

output є null.

ArgumentException

output не записуваний.

SaveXzCompressed(string, TarFormat?, XzArchiveSettings)

Зберігає архів за шляхом з xz стисненням.

public void SaveXzCompressed(string path, TarFormat? format = null, XzArchiveSettings settings = null)

Параметри

path string

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

format TarFormat?

Визначає формат заголовка tar. Значення null буде трактуватися як USTar, коли це можливо.

settings XzArchiveSettings

Набір налаштувань конкретного xz архіву: розмір словника, розмір блоку, тип перевірки.

Приклади

using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
    using (var archive = new TarArchive())
    {
        archive.CreateEntry("entry.bin", source);
        archive.SaveXzCompressed("result.tar.xz");
    }
}

SaveZCompressed(Stream, TarFormat?)

Зберігає архів у потоці з Z стисненням.

public void SaveZCompressed(Stream output, TarFormat? format = null)

Параметри

output Stream

Потік призначення.

format TarFormat?

Визначає формат заголовка tar. Значення null буде трактуватися як USTar, коли це можливо.

Приклади

using (FileStream result = File.OpenWrite("result.tar.Z"))
{
    using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
    {
        using (var archive = new TarArchive())
        {
            archive.CreateEntry("entry.bin", source);
            archive.SaveZCompressed(result);
        }
    }
}

Примітки

output повинен бути записуваним.

Виключення

ArgumentNullException

output є null.

ArgumentException

output не записуваний.

SaveZCompressed(string, TarFormat?)

Зберігає архів за шляхом з Z стисненням.

public void SaveZCompressed(string path, TarFormat? format = null)

Параметри

path string

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

format TarFormat?

Визначає формат заголовка tar. Значення null буде трактуватися як USTar, коли це можливо.

Приклади

using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
    using (var archive = new TarArchive())
    {
        archive.CreateEntry("entry.bin", source);
        archive.SaveZCompressed("result.tar.Z");
    }
}

SaveZstandard(Stream, TarFormat?)

Зберігає архів у потоці з Zstandard стисненням.

public void SaveZstandard(Stream output, TarFormat? format = null)

Параметри

output Stream

Потік призначення.

format TarFormat?

Визначає формат заголовка tar. Значення null буде трактуватися як USTar, коли це можливо.

Приклади

using (FileStream result = File.OpenWrite("result.tar.zst"))
{
    using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
    {
        using (var archive = new TarArchive())
        {
            archive.CreateEntry("entry.bin", source);
            archive.SaveZstandard(result);
        }
    }
}

Примітки

output повинен бути записуваним.

Виключення

ArgumentNullException

output є null.

ArgumentException

output не записуваний.

SaveZstandard(string, TarFormat?)

Зберігає архів у файлі за шляхом з Zstandard стисненням.

public void SaveZstandard(string path, TarFormat? format = null)

Параметри

path string

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

format TarFormat?

Визначає формат заголовка tar. Значення null буде трактуватися як USTar, коли це можливо.

Приклади

using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
    using (var archive = new TarArchive())
    {
        archive.CreateEntry("entry.bin", source);
        archive.SaveZstandard("result.tar.zst");
    }
}
 Українська