Class SharArchive

Class SharArchive

Numele spaţiului: Aspose.Zip.Shar Asamblare: Aspose.Zip.dll (25.5.0)

Această clasă reprezintă un fișier de arhivă ascuțit.

public class SharArchive : IDisposable

Inheritance

object SharArchive

Implements

IDisposable

Membrii moștenitori

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

Constructors

SharArchive()

Inițializează o nouă instanță a clasei Aspose.Zip.Shar.SharArchive.

public SharArchive()

Examples

Următorul exemplu arată cum să compresezi un fișier.

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

SharArchive(Strângere)

Inițializează o nouă instanță a clasei Aspose.Zip.Shar.SharArchive pregătite pentru decompresie.

public SharArchive(string path)

Parameters

path string

Calea spre sursa arhivelor.

Exceptions

ArgumentNullException

path’ is null.

SecurityException

Solicitantul nu are permisiunea necesară de acces.

ArgumentException

Calea " este goală, conține doar spații albe sau conține caractere invalide.

UnauthorizedAccessException

Accesul la fișierul path" este refuzat.

PathTooLongException

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.

NotSupportedException

Fișierul la path’ conține o coloană (:) în mijlocul stringului.

FileNotFoundException

Dosarul nu a fost găsit.

DirectoryNotFoundException

Calea specificată este invalidă, de exemplu, fiind pe un motor necartat.

IOException

Dosarul este deja deschis.

Properties

Entries

Obține intrări de tip Aspose.Zip.Shar.SharEntry care constituie arhiva.

public ReadOnlyCollection<sharentry> Entries { get; }

Valoarea proprietății

ReadOnlyCollection < SharEntry >

Methods

CreateEntries(Cuvânt cheie, bool)

Adăugați în arhiv toate fișierele și directorii în mod recurent în directorul dat.

public SharArchive 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

SharArchive

Instanta de intrare.

Examples

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

Exceptions

ArgumentNullException

sourceDirectory’ is null.

SecurityException

Solicitantul nu are permisiunea necesară pentru a accesa sourceDirectory'.

ArgumentException

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

PathTooLongException

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.

IOException

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 SharArchive 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

SharArchive

Instanta de intrare.

Examples

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

Exceptions

ArgumentNullException

directory’ is null.

SecurityException

Solicitantul nu are permisiunea necesară pentru a accesa directory”.

IOException

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

CreateEntry(String, FileInfo și Bool)

Creați o singură intrare în arhivă.

public SharEntry 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

SharEntry

Instanta de intrare.

Examples

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

Remarks

Dacă fișierul este deschis imediat cu parametru, acesta este blocat până când arhiva este eliminată.

Exceptions

ArgumentNullException

name’ is null.

ArgumentException

name’ is empty.

ArgumentNullException

fileInfo’ is null.

CreateEntry(String, String și Bool)

Creați o singură intrare în arhivă.

public SharEntry 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

SharEntry

Instanta de intrare.

Examples

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

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

ArgumentNullException

sourcePath’ is null.

SecurityException

Solicitantul nu are permisiunea necesară de acces.

ArgumentException

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.

UnauthorizedAccessException

Accesul la fișierul sourcePath’ este refuzat.

PathTooLongException

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 a fi ascuțit.

NotSupportedException

Fișierul la sourcePath’ conține o coloană (:) în mijlocul stringului.

CreateEntry(Războiul, Stream)

Creați o singură intrare în arhivă.

public SharEntry CreateEntry(string name, Stream source)

Parameters

name string

Numele intrării.

source Stream

Rata de intrare pentru intrare.

Returns

SharEntry

Instanta de intrare.

Examples

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

Exceptions

ArgumentNullException

name’ is null.

ArgumentNullException

source’ is null.

ArgumentException

name’ is empty.

DeleteEntry(SharEntry)

Elimină prima apariție a unei intrări specifice din lista de intrări.

public SharArchive DeleteEntry(SharEntry entry)

Parameters

entry SharEntry

Introducere pentru a elimina din lista de intrări.

Returns

SharArchive

Instanta de intrare.

Examples

Iată cum puteți șterge toate intrările, cu excepția celei din urmă:

using (var archive = new SharArchive("archive.shar"))
{
    while (archive.Entries.Count &gt; 1)
        archive.DeleteEntry(archive.Entries[0]);
    archive.Save(outputSharFile);
}

Exceptions

ArgumentNullException

entry’ is null.

DeleteEntry(int)

Îndepărtează intrarea din lista de intrare prin index.

public SharArchive DeleteEntry(int entryIndex)

Parameters

entryIndex int

Indicele de intrare bazat pe zero trebuie eliminat.

Returns

SharArchive

Arhiva cu intrarea este ștersă.

Examples

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

Exceptions

ArgumentOutOfRangeException

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

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.

Dispose()

Îndeplinește sarcini definite prin aplicare asociate cu eliberarea, eliberarea sau redistribuirea resurselor necontrolate.

public void Dispose()

Save(Strângere)

Salvează arhiva la un fișier de destinație furnizat.

public void Save(string destinationFileName)

Parameters

destinationFileName string

Dacă numele fișierului specific se referă la un fișier existent, acesta va fi supraîncris.

Examples

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

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

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

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.

DirectoryNotFoundException

De exemplu, destinationFileName’ este invalidă (de exemplu, este pe un disc necartat).

IOException

A apărut o eroare I/O în timpul deschiderii fișierului.

UnauthorizedAccessException

destinationFileName’ specified a file that 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.

FileNotFoundException

Dosarul nu a fost găsit.

Save(Stream)

Salvează arhiva la fluxul furnizat.

public void Save(Stream output)

Parameters

output Stream

Războiul de destinaţie.

Examples

using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
    using (var archive = new SharArchive())
    {
        archive.CreateEntry("entry1", "data.bin");        
        archive.Save(sharFile);
    }
}

Remarks

Trebuie să fie scrisă.

Exceptions

ArgumentNullException

output’ is null.

ArgumentException

output’ is not writable. - or - output’ is the same stream we extract from.

 Română