RarArchiveEntry.Extract

Extract(string, string)

Estrae la voce nel filesystem dal percorso fornito.

public FileInfo Extract(string path, string password = null)
ParametroTipoDescrizione
pathStringIl percorso del file di destinazione. Se il file esiste già, verrà sovrascritto.
passwordStringPassword facoltativa per la decrittazione.

Valore di ritorno

Le informazioni sul file del file composto.

Eccezioni

eccezionecondizione
ArgumentNullExceptionpath è zero.
SecurityExceptionIl chiamante non dispone dell’autorizzazione richiesta per l’accesso.
ArgumentExceptionILpath è vuoto, contiene solo spazi bianchi o contiene caratteri non validi.
UnauthorizedAccessExceptionAccesso all’archiviopath è negato.
PathTooLongExceptionIl specificatopath, nome file o entrambi superano la lunghezza massima definita dal sistema. Ad esempio, su piattaforme basate su Windows, i percorsi devono contenere meno di 248 caratteri ei nomi file devono contenere meno di 260 caratteri.
NotSupportedExceptionFile apath contiene i due punti (:) al centro della stringa.
InvalidDataExceptionVerifica CRC o MAC non riuscita per la voce.

Esempi

Estrai due voci dall’archivio rar.

using (FileStream rarFile = File.Open("archive.rar", FileMode.Open))
{
    using (RarArchive archive = new RarArchive(rarFile))
    {
        archive.Entries[0].Extract("first.bin", "pass");
        archive.Entries[1].Extract("second.bin", "pass");
    }
}

Guarda anche


Extract(Stream, string)

Estrae la voce nel flusso fornito.

public void Extract(Stream destination, string password = null)
ParametroTipoDescrizione
destinationStreamFlusso di destinazione. Deve essere scrivibile.
passwordStringPassword facoltativa per la decrittazione.

Eccezioni

eccezionecondizione
InvalidDataExceptionVerifica CRC o MAC non riuscita per la voce.
ArgumentExceptiondestination non supporta la scrittura.

Esempi

Estrarre una voce dell’archivio rar con password.

using (FileStream rarFile = File.Open("archive.zip", FileMode.Open))
{
    using (RarArchive archive = new RarArchive(rarFile))
    {
        archive.Entries[0].Extract(httpResponseStream, "p@s$");
    }
}

Guarda anche