Class CpioArchive

Class CpioArchive

Названий на: Aspose.Zip.Cpio Асамблея: Aspose.Zip.dll (25.5.0)

Цей клас являє собою файл архіву cpio.

public class CpioArchive : IArchive, IDisposable

Inheritance

object CpioArchive

Implements

IArchive , IDisposable

Нападні члени

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

Constructors

CpioArchive()

Ініціалізація нової інстанції класу Aspose.Zip.Cpio.CpioArchive.

public CpioArchive()

Examples

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

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

CpioArchive(Stream)

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

public CpioArchive(Stream sourceStream)

Parameters

sourceStream Stream

Джерело архіву, його потрібно шукати.

Examples

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

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

Remarks

Цей конструктор не розпалює жодного входу. переглянути Aspose.Zip.Cpio.CpioEntry.Open метод для розпалювання.

Exceptions

ArgumentNullException

sourceStream’ is null.

ArgumentException

sourceStream’ is not seekable.

InvalidDataException

sourceStream’ is not valid cpio archive.

CpioArchive(стрічка)

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

public CpioArchive(string path)

Parameters

path string

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

Examples

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

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

Remarks

Цей конструктор не розпалює жодного входу. переглянути Aspose.Zip.Cpio.CpioEntry.Open метод для розпалювання.

Exceptions

ArgumentNullException

path’ is null.

SecurityException

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

ArgumentException

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

UnauthorizedAccessException

Доступ до файлу path" відмовляється.

PathTooLongException

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

NotSupportedException

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

FileNotFoundException

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

DirectoryNotFoundException

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

IOException

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

Properties

Entries

Отримає входи з типу Aspose.Zip.Cpio.CpioEntry, що складається з архіву.

public ReadOnlyCollection<cpioentry> Entries { get; }

вартість нерухомості

ReadOnlyCollection • < CpioEntry >

Methods

CreateEntries(Стрічка, боол)

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

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

Parameters

sourceDirectory string

Керівництво для компресії.

includeRootDirectory bool

Показати, чи включити сам корінний каталог, чи ні.

Returns

CpioArchive

Вхідна інстанція Cpio.

Examples

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

Exceptions

ArgumentNullException

sourceDirectory’ is null.

SecurityException

Зателефонувач не має необхідного дозволу на доступ до sourceDirectory'.

ArgumentException

sourceDirectory’ contains invalid characters such as “, <, >, or |.

PathTooLongException

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

IOException

sourceDirectory’ stands for a file, not for a directory.

CreateEntries(Реферат на тему: Bool)

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

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

Parameters

directory DirectoryInfo

Керівництво для компресії.

includeRootDirectory bool

Показати, чи включити сам корінний каталог, чи ні.

Returns

CpioArchive

Вхідна інстанція Cpio.

Examples

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

Exceptions

ArgumentNullException

directory’ is null.

SecurityException

Зателефонувач не має необхідного дозволу на доступ до directory”.

IOException

directory’ stands for a file, not for a directory.

CreateEntry(Стриг, FileInfo, Bool)

Створіть єдиний вхід в архіві.

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

Parameters

name string

Назва входу.

fileInfo FileInfo

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

openImmediately bool

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

Returns

CpioEntry

Вхідна інстанція Cpio.

Examples

FileInfo fileInfo = new FileInfo("data.bin");
using (var archive = new CpioArchive())
{
    archive.CreateEntry("test.bin", fileInfo);
    archive.Save("archive.cpio");
}

Remarks

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

Exceptions

ArgumentNullException

name’ is null.

ArgumentException

name’ is empty.

ArgumentNullException

fileInfo’ is null.

CreateEntry(Стриг, Стриг, Боол)

Створіть єдиний вхід в архіві.

public CpioEntry CreateEntry(string name, string sourcePath, bool openImmediately = false)

Parameters

name string

Назва входу.

sourcePath string

Шлях до файлу, щоб бути компресованим.

openImmediately bool

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

Returns

CpioEntry

Вхідна інстанція Cpio.

Examples

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

Remarks

Назва файлу в параметрі не впливає на ім’я входу.

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

Exceptions

ArgumentNullException

sourcePath’ is null.

SecurityException

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

ArgumentException

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

UnauthorizedAccessException

Доступ до файлу sourcePath’ відмовляється.

PathTooLongException

Наприклад, на платформах, заснованих на Windows, шляхи повинні бути менше 248 символів, а імена файлів повинні бути менше 260 символів. - або - name’ є занадто довгим для cpio.

NotSupportedException

Файл в sourcePath’ містить колону (:) в середині смуги.

CreateEntry(Стрий, Стрий)

Створіть єдиний вхід в архіві.

public CpioEntry CreateEntry(string name, Stream source)

Parameters

name string

Назва входу.

source Stream

Вхідний потік для входу.

Returns

CpioEntry

Вхідна інстанція Cpio.

Examples

using (var archive = new CpioArchive())
{
    archive.CreateEntry("data.bin", File.OpenRead("data.bin"));
    archive.Save("archive.cpio");
}

Exceptions

ArgumentNullException

name’ is null.

ArgumentNullException

source’ is null.

ArgumentException

name’ is empty.

DeleteEntry(CpioEntry)

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

public CpioArchive DeleteEntry(CpioEntry entry)

Parameters

entry CpioEntry

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

Returns

CpioArchive

Вхідна інстанція Cpio.

Examples

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

using (var archive = new CpioArchive("archive.cpio"))
{
    while (archive.Entries.Count &gt; 1)
        archive.DeleteEntry(archive.Entries[0]);
    archive.Save(outputCpioFile);
}

Exceptions

ArgumentNullException

entry’ is null.

DeleteEntry(ІНТ)

Увімкніть вхід з списку входів за індексу.

public CpioArchive DeleteEntry(int entryIndex)

Parameters

entryIndex int

Індекс, заснований на нулі, вхід повинен бути видалений.

Returns

CpioArchive

Архів з входом видалений.

Examples

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

Exceptions

ArgumentOutOfRangeException

entryIndex’ is less than 0.-or- entryIndex’ is equal to or greater than ‘Entries’ count.

Dispose()

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

public void Dispose()

Dispose(Бол)

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

protected virtual void Dispose(bool disposing)

Parameters

disposing bool

Чи потрібно витрачати управляні ресурси.

ExtractToDirectory(стрічка)

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

public void ExtractToDirectory(string destinationDirectory)

Parameters

destinationDirectory string

Шлях до каталогу для розміщення витягнутих файлів.

Examples

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

Remarks

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

Exceptions

ArgumentNullException

Шлях нульовий

PathTooLongException

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

SecurityException

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

NotSupportedException

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

ArgumentException

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

IOException

Директива, зазначена шляхом, є файлом. -або- Назва мережі не відома.

Save(Стрічка, CpioFormat)

Зберегти архіви до даного файлу призначення.

public void Save(string destinationFileName, CpioFormat cpioFormat = CpioFormat.OldAscii)

Parameters

destinationFileName string

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

cpioFormat CpioFormat

Визначте формат Cpio Header.

Examples

using (var archive = new CpioArchive())
{
    archive.CreateEntry("entry1", "data.bin");        
    archive.Save("archive.cpio");
}

Remarks

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

Exceptions

ArgumentException

destinationFileName’ is a zero-length string, contains only white space, or contains one or more invalid characters as defined by System.IO.Path.InvalidPathChars.

ArgumentNullException

destinationFileName’ is null.

PathTooLongException

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

DirectoryNotFoundException

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

IOException

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

UnauthorizedAccessException

destinationFileName’Specified a file is read-only and access is not Read.-or- path specified a directory.-or- The caller does not have the required permission.

NotSupportedException

destinationFileName’ is in an invalid format.

Save(Потік, CpioFormat)

Зберегти архіви до наданого потоку.

public void Save(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)

Parameters

output Stream

Потік напряму.

cpioFormat CpioFormat

Визначте формат Cpio Header.

Examples

using (FileStream cpioFile = File.Open("archive.cpio", FileMode.Create))
{
    using (var archive = new CpioArchive())
    {
        archive.CreateEntry("entry1", "data.bin");        
        archive.Save(cpioFile);
    }
}

Remarks

Вона повинна бути письмовою.

Exceptions

ArgumentNullException

output’ is null.

ArgumentException

output’ is not writable. - or - output’ is the same stream we extract from.- OR -It is impossible to save archive in cpioFormat’ due to format restrictions.

SaveGzipped(Потік, CpioFormat)

Збереже архіви до потоку за допомогою компресії gzip.

public void SaveGzipped(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)

Parameters

output Stream

Потік напряму.

cpioFormat CpioFormat

Визначте формат Cpio Header.

Examples

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

Remarks

Вона повинна бути письмовою.

Exceptions

ArgumentNullException

output’ is null.

ArgumentException

output’ is not writable.

SaveGzipped(Стрічка, CpioFormat)

Збереже архіви до файлу шляхом з компресією gzip.

public void SaveGzipped(string path, CpioFormat cpioFormat = CpioFormat.OldAscii)

Parameters

path string

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

cpioFormat CpioFormat

Визначте формат Cpio Header.

Examples

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

Збереження компресованих(Потік, CpioFormat)

Зберегти файл до потоку за допомогою компресії LZMA.

public void SaveLZMACompressed(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)

Parameters

output Stream

Потік напряму.

cpioFormat CpioFormat

Визначте формат Cpio Header.

Examples

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

Remarks

Вона повинна бути письмовою.

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

Збереження компресованих(Стрічка, CpioFormat)

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

public void SaveLZMACompressed(string path, CpioFormat cpioFormat = CpioFormat.OldAscii)

Parameters

path string

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

cpioFormat CpioFormat

Визначте формат Cpio Header.

Examples

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

Remarks

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

SaveLzipped(Потік, CpioFormat)

Збереже архіви до потоку за допомогою компресії lzip.

public void SaveLzipped(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)

Parameters

output Stream

Потік напряму.

cpioFormat CpioFormat

Визначте формат Cpio Header.

Examples

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

Remarks

Вона повинна бути письмовою.

Exceptions

ArgumentNullException

output’ is null.

ArgumentException

output’ is not writable.

SaveLzipped(Стрічка, CpioFormat)

Збереже архіви до файлу шляхом з компресією lzip.

public void SaveLzipped(string path, CpioFormat cpioFormat = CpioFormat.OldAscii)

Parameters

path string

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

cpioFormat CpioFormat

Визначте формат Cpio Header.

Examples

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

SaveXzCompressed(Потік, CpioFormat, XzArchiveSettings)

Збереже архіви до потоку за допомогою компресії xz.

public void SaveXzCompressed(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii, XzArchiveSettings settings = null)

Parameters

output Stream

Потік напряму.

cpioFormat CpioFormat

Визначте формат Cpio Header.

settings XzArchiveSettings

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

Examples

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

Remarks

Потік повинен бути письмовим.

Exceptions

ArgumentNullException

output’ is null.

ArgumentException

output’ is not writable.

SaveXzCompressed(Стриг, CpioFormat, XzArchiveSettings)

Збереже архіви до маршруту шляхом з компресією xz.

public void SaveXzCompressed(string path, CpioFormat cpioFormat = CpioFormat.OldAscii, XzArchiveSettings settings = null)

Parameters

path string

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

cpioFormat CpioFormat

Визначте формат Cpio Header.

settings XzArchiveSettings

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

Examples

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

Сміттєзвалище(Потік, CpioFormat)

Збереже архіви до потоку за допомогою компресії Z.

public void SaveZCompressed(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)

Parameters

output Stream

Потік напряму.

cpioFormat CpioFormat

Визначте формат Cpio Header.

Examples

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

Remarks

Вона повинна бути письмовою.

Exceptions

ArgumentNullException

output’ is null.

ArgumentException

output’ is not writable.

Сміттєзвалище(Стрічка, CpioFormat)

Збереже архіви до шляху шляхом з компресією Z.

public void SaveZCompressed(string path, CpioFormat cpioFormat = CpioFormat.OldAscii)

Parameters

path string

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

cpioFormat CpioFormat

Визначте формат Cpio Header.

Examples

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

SaveZstandard(Потік, CpioFormat)

Збереже архіви до потоку за допомогою стандартної компресії.

public void SaveZstandard(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)

Parameters

output Stream

Потік напряму.

cpioFormat CpioFormat

Визначте формат Cpio Header.

Examples

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

Remarks

Вона повинна бути письмовою.

Exceptions

ArgumentNullException

output’ is null.

ArgumentException

output’ is not writable.

SaveZstandard(Стрічка, CpioFormat)

Збереже архіви до файлу шляхом з стандартною компресією.

public void SaveZstandard(string path, CpioFormat cpioFormat = CpioFormat.OldAscii)

Parameters

path string

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

cpioFormat CpioFormat

Визначте формат Cpio Header.

Examples

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