Class RarArchive

Class RarArchive

Namespace: Aspose.Zip.Rar
Assembly: Aspose.Zip.dll (25.1.0)

Questa classe rappresenta un file di archivio RAR. Usala per estrarre archivi RAR.

public class RarArchive : IArchive, IDisposable

Ereditarietà

objectRarArchive

Implementa

IArchive, IDisposable

Membri ereditati

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

Costruttori

RarArchive(string, RarArchiveLoadOptions)

Inizializza una nuova istanza della classe Aspose.Zip.Rar.RarArchive e compone l’elenco delle voci che possono essere estratte dall’archivio.

public RarArchive(string path, RarArchiveLoadOptions loadOptions = null)

Parametri

path string

Il percorso completamente qualificato o relativo al file di archivio.

loadOptions RarArchiveLoadOptions

Opzioni per caricare l’archivio esistente.

Esempi

L'esempio seguente estrae un archivio, quindi decomprime la prima voce in un MemoryStream.

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);
    }
}

Osservazioni

Questo costruttore non decomprime alcuna voce. Vedi il metodo Aspose.Zip.Rar.RarArchiveEntry.Open(System.String) per la decompressione.

Eccezioni

ArgumentNullException

path è nullo.

SecurityException

Il chiamante non ha il permesso richiesto per accedere.

ArgumentException

Il path è vuoto, contiene solo spazi bianchi o contiene caratteri non validi.

UnauthorizedAccessException

Accesso al file path negato.

PathTooLongException

Il path, il nome del file o entrambi superano la lunghezza massima definita dal sistema. Ad esempio, sulle piattaforme Windows, i percorsi devono essere inferiori a 248 caratteri e i nomi dei file devono essere inferiori a 260 caratteri.

NotSupportedException

Il file in path contiene due punti (:) nel mezzo della stringa.

FileNotFoundException

Il file non è stato trovato.

DirectoryNotFoundException

Il percorso specificato non è valido, ad esempio se si trova su un’unità non mappata.

IOException

Il file è già aperto.

RarArchive(Stream, RarArchiveLoadOptions)

Inizializza una nuova istanza della classe Aspose.Zip.Rar.RarArchive e compone l’elenco delle voci che possono essere estratte dall’archivio.

public RarArchive(Stream sourceStream, RarArchiveLoadOptions loadOptions = null)

Parametri

sourceStream Stream

La sorgente dell’archivio.

loadOptions RarArchiveLoadOptions

Opzioni per caricare l’archivio esistente.

Esempi

L'esempio seguente decifra e decomprime la prima voce in un MemoryStream.

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);
    }
}

Osservazioni

Questo costruttore non decomprime alcuna voce. Vedi il metodo Aspose.Zip.Rar.RarArchiveEntry.Open(System.String) per la decompressione.

Eccezioni

ArgumentException

sourceStream non è cercabile.

InvalidDataException

Firma errata per l’archivio. - o - Il file non è un archivio RAR.

Proprietà

Entries

Ottiene le voci di tipo Aspose.Zip.Rar.RarArchiveEntry che costituiscono l’archivio rar.

public ReadOnlyCollection<rararchiveentry> Entries { get; }

Valore della Proprietà

ReadOnlyCollection<RarArchiveEntry&gt;

Metodi

Dispose(bool)

Esegue attività definite dall’applicazione associate alla liberazione, al rilascio o al ripristino delle risorse non gestite.

protected virtual void Dispose(bool disposing)

Parametri

disposing bool

Se le risorse gestite devono essere liberate.

Dispose()

Esegue attività definite dall’applicazione associate alla liberazione, al rilascio o al ripristino delle risorse non gestite.

public void Dispose()

ExtractToDirectory(string, string)

Estrae tutti i file nell’archivio nella directory fornita.

[Obsolete("Per l'estrazione di archivi RAR crittografati, fornire la password nel costruttore con Aspose.Zip.Rar.RarArchiveLoadOptions.DecryptionPassword")]
public void ExtractToDirectory(string destinationDirectory, string password = null)

Parametri

destinationDirectory string

Il percorso della directory in cui posizionare i file estratti.

password string

Password opzionale per la decrittazione.

Esempi

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

Osservazioni

Se la directory non esiste, verrà creata.

Eccezioni

ArgumentNullException

destinationDirectory è nullo.

PathTooLongException

Il percorso specificato, il nome del file o entrambi superano la lunghezza massima definita dal sistema. Ad esempio, sulle piattaforme Windows, i percorsi devono essere inferiori a 248 caratteri e i nomi dei file devono essere inferiori a 260 caratteri.

SecurityException

Il chiamante non ha il permesso richiesto per accedere alla directory esistente.

NotSupportedException

Se la directory non esiste, il percorso contiene un carattere due punti (:) che non fa parte di un’etichetta di unità (“C:").

ArgumentException

destinationDirectory è una stringa di lunghezza zero, contiene solo spazi bianchi o contiene uno o più caratteri non validi. Puoi interrogare i caratteri non validi utilizzando il metodo System.IO.Path.GetInvalidPathChars. -o- il percorso è prefissato con, o contiene, solo un carattere due punti (:).

IOException

La directory specificata dal percorso è un file. -o- Il nome di rete non è noto.

ExtractToDirectory(string)

Estrae tutti i file nell’archivio nella directory fornita.

public void ExtractToDirectory(string destinationDirectory)

Parametri

destinationDirectory string

Il percorso della directory in cui posizionare i file estratti.

Esempi

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

Osservazioni

Se la directory non esiste, verrà creata.

Eccezioni

ArgumentNullException

destinationDirectory è nullo.

PathTooLongException

Il percorso specificato, il nome del file o entrambi superano la lunghezza massima definita dal sistema. Ad esempio, sulle piattaforme Windows, i percorsi devono essere inferiori a 248 caratteri e i nomi dei file devono essere inferiori a 260 caratteri.

SecurityException

Il chiamante non ha il permesso richiesto per accedere alla directory esistente.

NotSupportedException

Se la directory non esiste, il percorso contiene un carattere due punti (:) che non fa parte di un’etichetta di unità (“C:").

ArgumentException

destinationDirectory è una stringa di lunghezza zero, contiene solo spazi bianchi o contiene uno o più caratteri non validi. Puoi interrogare i caratteri non validi utilizzando il metodo System.IO.Path.GetInvalidPathChars. -o- il percorso è prefissato con, o contiene, solo un carattere due punti (:).

IOException

La directory specificata dal percorso è un file. -o- Il nome di rete non è noto.

 Italiano