Class CpioArchive

Class CpioArchive

Името на пространството: Aspose.Zip.Cpio Асамблея: Aspose.Zip.dll (25.5.0)

Този клас представлява файла с архиви.

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.Archive и съставя списък с вход, който може да бъде извлечен от архива.

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.Archive и съставя списък с вход, който може да бъде извлечен от архива.

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

Пътят " е празен, съдържа само бели пространства или съдържа невалидни знаци.

UnauthorizedAccessException

code class=“paramref”>path.

PathTooLongException

code class=“paramref”>path", име на файла, или и двете надвишават максималната дължина, определена от системата. например, на платформи, базирани на Windows, пътеките трябва да са по-малко от 248 знака, а имената на файла трябва да са по-малко от 260.

NotSupportedException

code class=“paramref”>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

Инстанция за влизане.

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

code class=“paramref”>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

Инстанция за влизане.

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

code class=“paramref”>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

Инстанция за влизане.

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

Инстанция за влизане.

Examples

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

Remarks

Името на файла, предоставено в параметър, не засяга името на входа.

Ако файлът се отваря незабавно с параметър, той се блокира, докато архивите не бъдат изтрити.

Exceptions

ArgumentNullException

sourcePath’ is null.

SecurityException

Призователят няма изискваното разрешение за достъп.

ArgumentException

code class=“paramref”>sourcePath’ е празен, съдържа само бели пространства, или съдържа невалидни знаци. - или - Име на файла, като част от name’, надвишава 100.

UnauthorizedAccessException

code class=“paramref”>sourcePath.

PathTooLongException

code class=“paramref”>sourcePath’, име на файла, или и двете надвишават максималната дължина, определена от системата. например, на платформи, базирани на Windows, пътеките трябва да са по-малко от 248 знака, а имената на файла трябва да са по-малко от 260 знака. - или - name’ е твърде дълго за cpio.

NotSupportedException

code class=“paramref”>sourcePath.

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

Създаване на един вход в архива.

public CpioEntry CreateEntry(string name, Stream source)

Parameters

name string

Името на входа.

source Stream

Входният поток за входа.

Returns

CpioEntry

Инстанция за влизане.

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

Инстанция за влизане.

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.GetInvalid PathChars. -или- пътът е предварително фиксиран с или включва само един символ на колона (:).

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

code class=“paramref”>destinationFileName’, име на файла, или и двете надвишават максималната дължина, определена от системата. например, на платформи, базирани на Windows, пътеките трябва да са по-малко от 248 символа, а имената на файла трябва да са по-малко от 260.

DirectoryNotFoundException

code class=“paramref”>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");
    }
}
 Български