Class RarArchive
Namespace: Aspose.Zip.Rar
Assembly: Aspose.Zip.dll (25.1.0)
Denna klass representerar RAR-arkivfil. Använd den för att extrahera RAR-arkiv.
public class RarArchive : IArchive, IDisposable
Arv
Implementerar
Ärvda Medlemmar
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Konstruktörer
RarArchive(string, RarArchiveLoadOptions)
Initierar en ny instans av Aspose.Zip.Rar.RarArchive-klassen och komponerar en lista över poster som kan extraheras från arkivet.
public RarArchive(string path, RarArchiveLoadOptions loadOptions = null)
Parameterar
path
string
Den fullständigt kvalificerade eller relativa sökvägen till arkivfilen.
loadOptions
RarArchiveLoadOptions
Alternativ för att ladda ett befintligt arkiv.
Exempel
Följande exempel extraherar ett arkiv och dekomprimerar sedan den första posten till en 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);
}
}
Kommentarer
Denna konstruktor dekomprimerar ingen post. Se Aspose.Zip.Rar.RarArchiveEntry.Open(System.String)-metoden för dekomprimering.
Undantag
path
är null.
Anroparen har inte den nödvändiga behörigheten för att få åtkomst.
path
är tom, innehåller endast vita tecken eller innehåller ogiltiga tecken.
Åtkomst till fil path
nekas.
Den angivna path
, filnamn, eller båda överskrider den systemdefinierade maximala längden. Till exempel, på Windows-baserade plattformar måste sökvägar vara kortare än 248 tecken och filnamn måste vara kortare än 260 tecken.
Fil på path
innehåller ett kolon (:) i mitten av strängen.
Filen hittades inte.
Den angivna sökvägen är ogiltig, till exempel att den ligger på en icke-mappad enhet.
Filen är redan öppen.
RarArchive(Stream, RarArchiveLoadOptions)
Initierar en ny instans av Aspose.Zip.Rar.RarArchive-klassen och komponerar en lista över poster som kan extraheras från arkivet.
public RarArchive(Stream sourceStream, RarArchiveLoadOptions loadOptions = null)
Parameterar
sourceStream
Stream
Källan till arkivet.
loadOptions
RarArchiveLoadOptions
Alternativ för att ladda ett befintligt arkiv.
Exempel
Följande exempel avkodar och dekomprimerar den första posten till en 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);
}
}
Kommentarer
Denna konstruktor dekomprimerar ingen post. Se Aspose.Zip.Rar.RarArchiveEntry.Open(System.String)-metoden för dekomprimering.
Undantag
sourceStream
är inte sökbar.
Fel signatur för arkivet. - eller - Filen är inte ett RAR-arkiv.
Egenskaper
Entries
Hämtar poster av Aspose.Zip.Rar.RarArchiveEntry-typ som utgör rar-arkivet.
public ReadOnlyCollection<rararchiveentry> Entries { get; }
Egenskapsvärde
ReadOnlyCollection<RarArchiveEntry>
Metoder
Dispose(bool)
Utför applikationsdefinierade uppgifter kopplade till att frigöra, släppa eller återställa icke-hanterade resurser.
protected virtual void Dispose(bool disposing)
Parameterar
disposing
bool
Om hanterade resurser ska frigöras.
Dispose()
Utför applikationsdefinierade uppgifter kopplade till att frigöra, släppa eller återställa icke-hanterade resurser.
public void Dispose()
ExtractToDirectory(string, string)
Extraherar alla filer i arkivet till den angivna katalogen.
[Obsolete("För extrahering av krypterat RAR-arkiv, vänligen ange lösenord i konstruktorn med Aspose.Zip.Rar.RarArchiveLoadOptions.DecryptionPassword")]
public void ExtractToDirectory(string destinationDirectory, string password = null)
Parameterar
destinationDirectory
string
Sökvägen till katalogen där de extraherade filerna ska placeras.
password
string
Valfritt lösenord för dekryptering.
Exempel
using (var archive = new RarArchive("archive.rar"))
{
archive.ExtractToDirectory("C:\extracted", "$ecRet");
}
Kommentarer
Om katalogen inte finns kommer den att skapas.
Undantag
destinationDirectory
är null.
Den angivna sökvägen, filnamnet eller båda överskrider den systemdefinierade maximala längden. Till exempel, på Windows-baserade plattformar måste sökvägar vara kortare än 248 tecken och filnamn måste vara kortare än 260 tecken.
Anroparen har inte den nödvändiga behörigheten för att få åtkomst till befintlig katalog.
Om katalogen inte finns, innehåller sökvägen ett kolon-tecken (:) som inte är en del av en enhetsbeteckning (“C:").
destinationDirectory
är en sträng med noll längd, innehåller endast vita tecken eller innehåller ett eller flera ogiltiga tecken. Du kan fråga efter ogiltiga tecken genom att använda metoden System.IO.Path.GetInvalidPathChars. - eller - sökvägen är föregången av, eller innehåller, endast ett kolon-tecken (:).
Den angivna sökvägen är en fil. - eller - Det nätverksnamnet är okänt.
ExtractToDirectory(string)
Extraherar alla filer i arkivet till den angivna katalogen.
public void ExtractToDirectory(string destinationDirectory)
Parameterar
destinationDirectory
string
Sökvägen till katalogen där de extraherade filerna ska placeras.
Exempel
using (var archive = new RarArchive("archive.rar"))
{
archive.ExtractToDirectory("C:\extracted");
}
Kommentarer
Om katalogen inte finns kommer den att skapas.
Undantag
destinationDirectory
är null.
Den angivna sökvägen, filnamnet eller båda överskrider den systemdefinierade maximala längden. Till exempel, på Windows-baserade plattformar måste sökvägar vara kortare än 248 tecken och filnamn måste vara kortare än 260 tecken.
Anroparen har inte den nödvändiga behörigheten för att få åtkomst till befintlig katalog.
Om katalogen inte finns, innehåller sökvägen ett kolon-tecken (:) som inte är en del av en enhetsbeteckning (“C:").
destinationDirectory
är en sträng med noll längd, innehåller endast vita tecken eller innehåller ett eller flera ogiltiga tecken. Du kan fråga efter ogiltiga tecken genom att använda metoden System.IO.Path.GetInvalidPathChars. - eller - sökvägen är föregången av, eller innehåller, endast ett kolon-tecken (:).
Den angivna sökvägen är en fil. - eller - Det nätverksnamnet är okänt.