Class CpioArchive
Название пространства: Aspose.Zip.Cpio Ассоциация: Aspose.Zip.dll (25.5.0)
Этот класс представляет собой файл архивов cpio.
public class CpioArchive : IArchive, IDisposable
Inheritance
Implements
Наследованные члены
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
sourceStream’ is null.
sourceStream’ is not seekable.
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
path’ is null.
Заказчик не имеет требуемого разрешения на доступ.
path" пустая, содержит только белые пространства или содержит недействительные символы.
Доступ к файлу path" отказывается.
Указанный path", имя файла, или оба превышают максимальную длину, установленную системой. Например, на платформах на базе Windows, пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Файл в path’ содержит колону (:) в середине строки.
Файл не найден.
Указанный маршрут является недействительным, например, находиться на немапированном диске.
Файл уже открыт.
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
Вступление в инстанцию.
Examples
using (FileStream cpioFile = File.Open("archive.cpio", FileMode.Create))
{
using (var archive = new CpioArchive())
{
archive.CreateEntries("C:\folder", false);
archive.Save(cpioFile);
}
}
Exceptions
sourceDirectory’ is null.
Вызовчик не имеет требуемого разрешения на доступ к sourceDirectory'.
sourceDirectory’ contains invalid characters such as “, <, >, or |.
Например, на платформах на базе Windows, пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
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
Вступление в инстанцию.
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
directory’ is null.
Вызовчик не имеет требуемого разрешения на доступ к directory”.
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
Вступление в инстанцию.
Examples
FileInfo fileInfo = new FileInfo("data.bin");
using (var archive = new CpioArchive())
{
archive.CreateEntry("test.bin", fileInfo);
archive.Save("archive.cpio");
}
Remarks
Если файл открывается немедленно с параметром, он блокируется до того момента, пока файл не будет удален.
Exceptions
name’ is null.
name’ is empty.
fileInfo’ is null.
CreateEntry(Стриг, Стриг, Боол)
Создайте единый вход в архиве.
public CpioEntry CreateEntry(string name, string sourcePath, bool openImmediately = false)
Parameters
name
string
Название входа.
sourcePath
string
Путь к файлу для компрессии.
openImmediately
bool
Правда, если открыть файл сразу, то в противном случае открыть файл на архиве.
Returns
Вступление в инстанцию.
Examples
using (var archive = new CpioArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.cpio");
}
Remarks
Название входа устанавливается только в пределах параметра.Название файла, предоставленное в параметре, не влияет на имя входа.
Если файл открывается немедленно с параметром, он блокируется до того момента, пока файл не будет удален.
Exceptions
sourcePath’ is null.
Заказчик не имеет требуемого разрешения на доступ.
sourcePath’ является пустым, содержит только белые пространства, или содержит недействительные символы. - или - Название файла, как часть
name’, превышает 100 символов.
Доступ к файлу sourcePath" отказывается.
Определенный sourcePath", имя файла, или оба превышают максимальную длину, установленную системой. Например, на платформах на базе Windows, пути должны быть менее 248 символов, а имена файлов должны быть менее 260 символов. - или -
name’ слишком длинный для cpio.
Файл в sourcePath’ содержит колону (:) в середине строки.
CreateEntry(Стрем , Stream)
Создайте единый вход в архиве.
public CpioEntry CreateEntry(string name, Stream source)
Parameters
name
string
Название входа.
source
Stream
Входный поток для входа.
Returns
Вступление в инстанцию.
Examples
using (var archive = new CpioArchive())
{
archive.CreateEntry("data.bin", File.OpenRead("data.bin"));
archive.Save("archive.cpio");
}
Exceptions
name’ is null.
source’ is null.
name’ is empty.
DeleteEntry(CpioEntry)
Удаляется первое появление конкретного входа из списка входов.
public CpioArchive DeleteEntry(CpioEntry entry)
Parameters
entry
CpioEntry
Вход, который нужно удалить из списка входов.
Returns
Вступление в инстанцию.
Examples
Вот как вы можете удалить все записи, за исключением последней:
using (var archive = new CpioArchive("archive.cpio"))
{
while (archive.Entries.Count > 1)
archive.DeleteEntry(archive.Entries[0]);
archive.Save(outputCpioFile);
}
Exceptions
entry’ is null.
DeleteEntry(ИНТ)
Удаление входа из списка входа по индексу.
public CpioArchive DeleteEntry(int entryIndex)
Parameters
entryIndex
int
Индекс, основанный на нуле, входа должен быть удален.
Returns
Архив с входом удален.
Examples
using (var archive = new CpioArchive("two_files.cpio"))
{
archive.DeleteEntry(0);
archive.Save("single_file.cpio");
}
Exceptions
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
Путь нулевой
Например, на платформах, основанных на Windows, маршруты должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Заклинатель не имеет требуемого разрешения на доступ к существующему каталогу.
Если каталог не существует, то маршрут содержит символ узла (:) который не является частью дисковой маркировки («C:»).
Пут является строкой нулевой длины, содержит только белый пространство, или содержит один или несколько недействительных символов. Вы можете запросить недействительные символы, используя метод System.IO.Path.GetInvalidPathChars. -или- путь заранее фиксирован с, или содержит, только один символ колонны (:).
Каталог, указанный по маршруту, является файлом. -или- Название сети неизвестно.
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
destinationFileName’ is a zero-length string, contains only white space, or contains one or more invalid characters as defined by System.IO.Path.InvalidPathChars.
destinationFileName’ is null.
Определенный destinationFileName’, имя файла, или оба превышают максимальную длину, установленную системой. Например, на платформах на базе Windows, маршруты должны быть менее 248 символов, а имена файлов должны быть менее 260 символов.
Указанная destinationFileName’ является недействительной (например, она находится на безкартированном диске).
При открытии файла произошла ошибка I/O.
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.
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
output’ is null.
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
output’ is null.
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
output’ is null.
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
output’ is null.
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");
}
}
SaveZкомпресс(Поток, 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
output’ is null.
output’ is not writable.
SaveZкомпресс(Стриг, 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
output’ is null.
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");
}
}