RarArchiveEntry.Extract

Extract(string, string)

Extraherar posten till filsystemet med den angivna sökvägen.

public FileInfo Extract(string path, string password = null)
ParameterTypBeskrivning
pathStringSökvägen till destinationsfilen. Om filen redan finns kommer den att skrivas över.
passwordStringValfritt lösenord för dekryptering.

Returvärde

Filinformationen för den sammansatta filen.

Undantag

undantagskick
ArgumentNullExceptionpath är inget.
SecurityExceptionDen som ringer har inte den behörighet som krävs för att få åtkomst.
ArgumentExceptionDepath är tom, innehåller bara blanksteg eller innehåller ogiltiga tecken.
UnauthorizedAccessExceptionTillgång till filpath är nekad.
PathTooLongExceptionDen angivnapath, filnamn eller båda överskrider den systemdefinierade maximala längden. Till exempel, på Windows-baserade plattformar måste sökvägar vara mindre än 248 tecken och filnamn måste vara mindre än 260 tecken.
NotSupportedExceptionArkivera klpath innehåller ett kolon (:) i mitten av strängen.
InvalidDataExceptionCRC- eller MAC-verifiering misslyckades för posten.

Exempel

Extrahera två poster i rar-arkivet.

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

Se även


Extract(Stream, string)

Extraherar posten till den tillhandahållna strömmen.

public void Extract(Stream destination, string password = null)
ParameterTypBeskrivning
destinationStreamDestinationsström. Måste vara skrivbart.
passwordStringValfritt lösenord för dekryptering.

Undantag

undantagskick
InvalidDataExceptionCRC- eller MAC-verifiering misslyckades för posten.
ArgumentExceptiondestination stöder inte skrivande.

Exempel

Extrahera en post i rar-arkivet med lösenord.

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

Se även