Class CpioArchive
Numele spaţiului: Aspose.Zip.Cpio Asamblare: Aspose.Zip.dll (25.5.0)
Această clasă reprezintă fișierul de arhivă cpio.
public class CpioArchive : IArchive, IDisposable
Inheritance
Implements
Membrii moștenitori
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Constructors
CpioArchive()
Inițializează o nouă instanță a clasei Aspose.Zip.Cpio.CpioArchive.
public CpioArchive()
Examples
Următorul exemplu arată cum să compresezi un fișier.
using (var archive = new CpioArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.cpio");
}
CpioArchive(Stream)
Inițializează o nouă instanță a clasei Aspose.Zip.Cpio.CpioArchive și compune o listă de intrări care poate fi extras din arhivă.
public CpioArchive(Stream sourceStream)
Parameters
sourceStream
Stream
Sursă de arhivă. trebuie să fie căutată.
Examples
Următorul exemplu arată cum să extrageți toate intrările într-un director.
using (var archive = new CpioArchive(File.OpenRead("archive.cpio")))
{
archive.ExtractToDirectory("C:\extracted");
}
Remarks
Acest constructor nu dezambalează nici o intrare. Vezi Aspose.Zip.Cpio.CpioEntry.Metoda deschisă pentru dezambalare.
Exceptions
sourceStream’ is null.
sourceStream’ is not seekable.
sourceStream’ is not valid cpio archive.
CpioArchive(Strângere)
Inițializează o nouă instanță a clasei Aspose.Zip.Cpio.CpioArchive și compune o listă de intrări care poate fi extras din arhivă.
public CpioArchive(string path)
Parameters
path
string
Calea către arhivă.
Examples
Următorul exemplu arată cum să extrageți toate intrările într-un director.
using (var archive = new CpioArchive("archive.cpio"))
{
archive.ExtractToDirectory("C:\extracted");
}
Remarks
Acest constructor nu dezambalează nici o intrare. Vezi Aspose.Zip.Cpio.CpioEntry.Metoda deschisă pentru dezambalare.
Exceptions
path’ is null.
Solicitantul nu are permisiunea necesară de acces.
Calea " este goală, conține doar spații albe sau conține caractere invalide.
Accesul la fișierul path" este refuzat.
Calea specificată path’, numele fișierului, sau ambele depășesc lungimea maximă definită de sistem. De exemplu, pe platformele bazate pe Windows, căile trebuie să fie mai puțin de 248 de caractere, iar numele fișierului trebuie să fie mai puțin de 260 de caractere.
Fișierul la path’ conține o coloană (:) în mijlocul stringului.
Dosarul nu a fost găsit.
Calea specificată este invalidă, de exemplu, fiind pe un motor necartat.
Dosarul este deja deschis.
Properties
Entries
Obține intrări de tip Aspose.Zip.Cpio.CpioEntry care constituie arhiva.
public ReadOnlyCollection<cpioentry> Entries { get; }
Valoarea proprietății
ReadOnlyCollection < CpioEntry >
Methods
CreateEntries(Cuvânt cheie, bool)
Adăugați în arhiv toate fișierele și directorii în mod recurent în directorul dat.
public CpioArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true)
Parameters
sourceDirectory
string
Directoare pentru compresă.
includeRootDirectory
bool
Indică dacă să includă directorul de rădăcină în sine sau nu.
Returns
Instanta de intrare.
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.
Solicitantul nu are permisiunea necesară pentru a accesa sourceDirectory'.
sourceDirectory’ contains invalid characters such as “, <, >, or |.
Calea specificată, numele fișierului sau ambele depășesc lungimea maximă definită de sistem. De exemplu, pe platformele bazate pe Windows, căile trebuie să fie mai puțin de 248 de caractere, iar numele fișierului trebuie să fie mai puțin de 260 de caractere. Calea specificată, numele fișierului sau ambele sunt prea lungi.
sourceDirectory’ stands for a file, not for a directory.
CreateEntries(Cuvânt cheie, bool)
Adăugați în arhiv toate fișierele și directorii în mod recurent în directorul dat.
public CpioArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true)
Parameters
directory
DirectoryInfo
Directoare pentru compresă.
includeRootDirectory
bool
Indică dacă să includă directorul de rădăcină în sine sau nu.
Returns
Instanta de intrare.
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.
Solicitantul nu are permisiunea necesară pentru a accesa directory”.
directory’ stands for a file, not for a directory.
CreateEntry(String, FileInfo și Bool)
Creați o singură intrare în arhivă.
public CpioEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false)
Parameters
name
string
Numele intrării.
fileInfo
FileInfo
Metadata fișierului sau a folderului trebuie să fie compresă.
openImmediately
bool
Adevărat, dacă deschideți imediat fișierul, în caz contrar deschideți fișierul pe stocarea arhivelor.
Returns
Instanta de intrare.
Examples
FileInfo fileInfo = new FileInfo("data.bin");
using (var archive = new CpioArchive())
{
archive.CreateEntry("test.bin", fileInfo);
archive.Save("archive.cpio");
}
Remarks
Dacă fișierul este deschis imediat cu parametru, acesta este blocat până când arhiva este eliminată.
Exceptions
name’ is null.
name’ is empty.
fileInfo’ is null.
CreateEntry(String, String și Bool)
Creați o singură intrare în arhivă.
public CpioEntry CreateEntry(string name, string sourcePath, bool openImmediately = false)
Parameters
name
string
Numele intrării.
sourcePath
string
Calea pentru a fi compresat.
openImmediately
bool
Adevărat, dacă deschideți imediat fișierul, în caz contrar deschideți fișierul pe stocarea arhivelor.
Returns
Instanta de intrare.
Examples
using (var archive = new CpioArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.cpio");
}
Remarks
Numele de intrare este setat numai în parametru. numele de fișier furnizat în parametru nu afectează numele de intrare.
Dacă fișierul este deschis imediat cu parametru, acesta este blocat până când arhiva este eliminată.
Exceptions
sourcePath’ is null.
Solicitantul nu are permisiunea necesară de acces.
sourcePath’ este gol, conține doar spații albe sau conține caractere invalide. - sau - Numele fișierului, ca parte a
name’, depășește 100 de simboluri.
Accesul la fișierul sourcePath’ este refuzat.
De exemplu, pe platforme bazate pe Windows, căile trebuie să fie mai puțin de 248 de caractere, iar numele fișierului trebuie să fie mai puțin de 260 de caractere. - sau - name’ este prea lung pentru cpio.
Fișierul la sourcePath’ conține o coloană (:) în mijlocul stringului.
CreateEntry(Războiul, Stream)
Creați o singură intrare în arhivă.
public CpioEntry CreateEntry(string name, Stream source)
Parameters
name
string
Numele intrării.
source
Stream
Rata de intrare pentru intrare.
Returns
Instanta de intrare.
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)
Elimină prima apariție a unei intrări specifice din lista de intrări.
public CpioArchive DeleteEntry(CpioEntry entry)
Parameters
entry
CpioEntry
Introducere pentru a elimina din lista de intrări.
Returns
Instanta de intrare.
Examples
Iată cum puteți șterge toate intrările, cu excepția celei din urmă:
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(int)
Îndepărtează intrarea din lista de intrare prin index.
public CpioArchive DeleteEntry(int entryIndex)
Parameters
entryIndex
int
Indicele de intrare bazat pe zero trebuie eliminat.
Returns
Arhiva cu intrarea este ștersă.
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()
Îndeplinește sarcini definite prin aplicare asociate cu eliberarea, eliberarea sau redistribuirea resurselor necontrolate.
public void Dispose()
Dispose(Boulă)
Îndeplinește sarcini definite prin aplicare asociate cu eliberarea, eliberarea sau redistribuirea resurselor necontrolate.
protected virtual void Dispose(bool disposing)
Parameters
disposing
bool
În cazul în care resursele gestionate ar trebui să fie eliminate.
ExtractToDirectory(Strângere)
Extrage toate fișierele din arhivă în directorul furnizat.
public void ExtractToDirectory(string destinationDirectory)
Parameters
destinationDirectory
string
Calea către directorie pentru a pune în fișierele extrase.
Examples
using (var archive = new CpioArchive("archive.cpio"))
{
archive.ExtractToDirectory("C:\extracted");
}
Remarks
Dacă directorul nu există, acesta va fi creat.
Exceptions
Calea este zero
Calea specificată, numele fișierului sau ambele depășesc lungimea maximă definită de sistem. De exemplu, pe platformele bazate pe Windows, căile trebuie să fie mai puțin de 248 de caractere, iar numele fișierului trebuie să fie mai puțin de 260 de caractere.
Solicitantul nu are permisiunea necesară pentru a accesa directorul existent.
În cazul în care directorul nu există, o cale conține un caracter colon (:) care nu face parte dintr-un etichet drive (“C:”).
Path este o linie de lungime zero, conține doar spațiu alb, sau conține unul sau mai multe caractere invalide. puteți solicita caractere invalide folosind metoda System.IO.Path.GetInvalidPathChars. -or- traseul este prefixat cu, sau conține, doar un caracter colon (:).
Directoriul specificat de cale este un fișier. -or- Numele rețelei nu este cunoscut.
Save(Strângere, CpioFormat)
Salvează arhiva la un fișier de destinație furnizat.
public void Save(string destinationFileName, CpioFormat cpioFormat = CpioFormat.OldAscii)
Parameters
destinationFileName
string
Dacă numele fișierului specific se referă la un fișier existent, acesta va fi supraîncris.
cpioFormat
CpioFormat
Descrierea formatului cpio header.
Examples
using (var archive = new CpioArchive())
{
archive.CreateEntry("entry1", "data.bin");
archive.Save("archive.cpio");
}
Remarks
Este posibil să salvați un arhiv pe aceeași cale pe care a fost încărcat de la. Cu toate acestea, acest lucru nu este recomandat deoarece această abordare utilizează copierea la un fișier temporar.
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.
De exemplu, pe platformele bazate pe Windows, căile trebuie să fie mai puțin de 248 de caractere, iar numele fișierului trebuie să fie mai puțin de 260 de caractere.
De exemplu, destinationFileName’ este invalidă (de exemplu, este pe un disc necartat).
A apărut o eroare I/O în timpul deschiderii fișierului.
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(Războiul, CpioFormat)
Salvează arhiva la fluxul furnizat.
public void Save(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)
Parameters
output
Stream
Războiul de destinaţie.
cpioFormat
CpioFormat
Descrierea formatului 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
Trebuie să fie scrisă.
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(Războiul, CpioFormat)
Salvează arhivele în flux cu compresia gzip.
public void SaveGzipped(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)
Parameters
output
Stream
Războiul de destinaţie.
cpioFormat
CpioFormat
Descrierea formatului 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
Trebuie să fie scrisă.
Exceptions
output’ is null.
output’ is not writable.
SaveGzipped(Strângere, CpioFormat)
Salvează fișierul pe cale cu compresia gzip.
public void SaveGzipped(string path, CpioFormat cpioFormat = CpioFormat.OldAscii)
Parameters
path
string
Dacă numele fișierului specific se referă la un fișier existent, acesta va fi supraîncris.
cpioFormat
CpioFormat
Descrierea formatului 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");
}
}
salvare compresă(Războiul, CpioFormat)
Salvează arhiva în flux cu compresia LZMA.
public void SaveLZMACompressed(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)
Parameters
output
Stream
Războiul de destinaţie.
cpioFormat
CpioFormat
Descrierea formatului 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
Trebuie să fie scrisă.
Important: arhiva cpio este compusă apoi comprimată în cadrul acestei metode, conținutul său este păstrat intern.
salvare compresă(Strângere, CpioFormat)
Salvează arhiva la fișier prin cale cu compresia lzma.
public void SaveLZMACompressed(string path, CpioFormat cpioFormat = CpioFormat.OldAscii)
Parameters
path
string
Dacă numele fișierului specific se referă la un fișier existent, acesta va fi supraîncris.
cpioFormat
CpioFormat
Descrierea formatului 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
Important: arhiva cpio este compusă apoi comprimată în cadrul acestei metode, conținutul său este păstrat intern.
SaveLzipped(Războiul, CpioFormat)
Salvează arhivele în flux cu compresia lzip.
public void SaveLzipped(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)
Parameters
output
Stream
Războiul de destinaţie.
cpioFormat
CpioFormat
Descrierea formatului 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
Trebuie să fie scrisă.
Exceptions
output’ is null.
output’ is not writable.
SaveLzipped(Strângere, CpioFormat)
Salvează fișierul pe cale cu compresia lzip.
public void SaveLzipped(string path, CpioFormat cpioFormat = CpioFormat.OldAscii)
Parameters
path
string
Dacă numele fișierului specific se referă la un fișier existent, acesta va fi supraîncris.
cpioFormat
CpioFormat
Descrierea formatului 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(Stream, CpioFormat, XzArchiveSettings)
Salvează arhivele în flux cu compresia xz.
public void SaveXzCompressed(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii, XzArchiveSettings settings = null)
Parameters
output
Stream
Războiul de destinaţie.
cpioFormat
CpioFormat
Descrierea formatului cpio header.
settings
XzArchiveSettings
Set de setare special xz arhiv: dimensiunea dicționarului, dimensiunea blocului, tipul de verificare.
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
Fluxul trebuie să fie scris.
Exceptions
output’ is null.
output’ is not writable.
SaveXzCompressed(Strângere, CpioFormat, XzArchiveSettings)
Salvează arhivele pe traseu prin traseu cu compresia xz.
public void SaveXzCompressed(string path, CpioFormat cpioFormat = CpioFormat.OldAscii, XzArchiveSettings settings = null)
Parameters
path
string
Dacă numele fișierului specific se referă la un fișier existent, acesta va fi supraîncris.
cpioFormat
CpioFormat
Descrierea formatului cpio header.
settings
XzArchiveSettings
Set de setare special xz arhiv: dimensiunea dicționarului, dimensiunea blocului, tipul de verificare.
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");
}
}
salvare compresă(Războiul, CpioFormat)
Salvează arhivele în flux cu compresia Z.
public void SaveZCompressed(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)
Parameters
output
Stream
Războiul de destinaţie.
cpioFormat
CpioFormat
Descrierea formatului 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
Trebuie să fie scrisă.
Exceptions
output’ is null.
output’ is not writable.
salvare compresă(Strângere, CpioFormat)
Salvează arhivele pe cale prin cale cu compresia Z.
public void SaveZCompressed(string path, CpioFormat cpioFormat = CpioFormat.OldAscii)
Parameters
path
string
Dacă numele fișierului specific se referă la un fișier existent, acesta va fi supraîncris.
cpioFormat
CpioFormat
Descrierea formatului 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(Războiul, CpioFormat)
Salvează arhivele în flux cu compresia Zstandard.
public void SaveZstandard(Stream output, CpioFormat cpioFormat = CpioFormat.OldAscii)
Parameters
output
Stream
Războiul de destinaţie.
cpioFormat
CpioFormat
Descrierea formatului 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
Trebuie să fie scrisă.
Exceptions
output’ is null.
output’ is not writable.
SaveZstandard(Strângere, CpioFormat)
Salvează fișierul pe cale cu compresia Zstandard.
public void SaveZstandard(string path, CpioFormat cpioFormat = CpioFormat.OldAscii)
Parameters
path
string
Dacă numele fișierului specific se referă la un fișier existent, acesta va fi supraîncris.
cpioFormat
CpioFormat
Descrierea formatului 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");
}
}