Class RarArchive

Class RarArchive

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

Această clasă reprezintă fișierul de arhivă RAR. Utilizați-l pentru a extrage arhivele RAR.

public class RarArchive : IArchive, IDisposable

Inheritance

object RarArchive

Implements

IArchive , IDisposable

Membrii moștenitori

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

Constructors

RarArchive(Arhivă, RarArchiveLoadOptions)

Inițializează o nouă instanță a clasei Aspose.Zip.Rar.RarArchive și compune o listă de intrări care poate fi extras din arhivă.

public RarArchive(string path, RarArchiveLoadOptions loadOptions = null)

Parameters

path string

Calea complet calificată sau calea relativă către fișierul de arhivă.

loadOptions RarArchiveLoadOptions

Opțiuni de încărcare a arhivelor existente cu.

Examples

Următorul exemplu extrage un arhiv, apoi decomprime prima intrare la un .

var extracted = new MemoryStream();
using (RarArchive archive = new RarArchive("data.rar"))
{
    using (var decompressed = archive.Entries[0].Open())
    {
        byte[] b = new byte[8192];
        int bytesRead;
        while (0 < (bytesRead = decompressed.Read(b, 0, b.Length)))
            extracted.Write(b, 0, bytesRead);
    }
}

Remarks

Acest constructor nu decomprime nicio intrare. a se vedea Aspose.Zip.Rar.RarArchiveEntry.Open(System.String) metoda de decomprimare.

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.

RarArchive(Arhivă, RarArchiveLoadOptions)

Inițializează o nouă instanță a clasei Aspose.Zip.Rar.RarArchive și compune o listă de intrări care poate fi extras din arhivă.

public RarArchive(Stream sourceStream, RarArchiveLoadOptions loadOptions = null)

Parameters

sourceStream Stream

Sursă a arhivelor.

loadOptions RarArchiveLoadOptions

Opțiuni de încărcare a arhivelor existente cu.

Examples

Următorul exemplu deciferă și decomprime prima intrare la a .

var fs = File.OpenRead("encrypted.rar");
var extracted = new MemoryStream();
using (RarArchive archive = new RarArchive(fs, new RarArchiveLoadOptions() { DecryptionPassword = "p@s$" }))
{
    using (var decompressed = archive.Entries[0].Open())
    {
        byte[] b = new byte[8192];
        int bytesRead;
        while (0 < (bytesRead = decompressed.Read(b, 0, b.Length)))
            extracted.Write(b, 0, bytesRead);
    }
}

Remarks

Acest constructor nu decomprime nicio intrare. a se vedea Aspose.Zip.Rar.RarArchiveEntry.Open(System.String) metoda de decomprimare.

Exceptions

ArgumentException

sourceStream’ is not seekable.

InvalidDataException

  • sau - fișierul nu este un arhiv RAR.

Properties

Entries

Obține intrări de tip Aspose.Zip.Rar.RarArchiveEntry care constituie arhiva rară.

public ReadOnlyCollection<rararchiveentry> Entries { get; }

Valoarea proprietății

ReadOnlyCollection < RarArchiveEntry >

Methods

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()

ExtractToDirectory(String și String)

Extrage toate fișierele din arhivă în directorul furnizat.

[Obsolete("For extraction encrypted RAR archive please provide password in constructor with Aspose.Zip.Rar.RarArchiveLoadOptions.DecryptionPassword")]
public void ExtractToDirectory(string destinationDirectory, string password = null)

Parameters

destinationDirectory string

Calea către directorie pentru a pune în fișierele extrase.

password string

Password opțional pentru decodificare.

Examples

using (var archive = new RarArchive("archive.rar")) 
{ 
   archive.ExtractToDirectory("C:\extracted", "$ecRet");
}

Remarks

Dacă directorul nu există, acesta va fi creat.

Exceptions

ArgumentNullException

destinationDirectory’ is null.

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.

SecurityException

Solicitantul nu are permisiunea necesară pentru a accesa directorul existent.

NotSupportedException

Dacă directorul nu există, calea conține un caracter colon (:) care nu face parte dintr-o etichetă de disc (“C:”).

ArgumentException

destinationDirectory’ is a zero-length string, contains only white space, or contains one or more invalid characters. You can query for invalid characters by using the System.IO.Path.GetInvalidPathChars method. -or- path is prefixed with, or contains, only a colon character (:).

IOException

Directoriul specificat de cale este un fișier. -or- Numele rețelei nu este cunoscut.

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 RarArchive("archive.rar")) 
{ 
   archive.ExtractToDirectory("C:\extracted");
}

Remarks

Dacă directorul nu există, acesta va fi creat.

Exceptions

ArgumentNullException

destinationDirectory’ is null.

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.

SecurityException

Solicitantul nu are permisiunea necesară pentru a accesa directorul existent.

NotSupportedException

Dacă directorul nu există, calea conține un caracter colon (:) care nu face parte dintr-o etichetă de disc (“C:”).

ArgumentException

destinationDirectory’ is a zero-length string, contains only white space, or contains one or more invalid characters. You can query for invalid characters by using the System.IO.Path.GetInvalidPathChars method. -or- path is prefixed with, or contains, only a colon character (:).

IOException

Directoriul specificat de cale este un fișier. -or- Numele rețelei nu este cunoscut.

 Română