RarArchive.RarArchive

RarArchive(string, RarArchiveLoadOptions)

Initialisiert eine neue Instanz vonRarArchive Klasse und Liste der zusammengesetzten Einträge können aus dem Archiv extrahiert werden.

public RarArchive(string path, RarArchiveLoadOptions loadOptions = null)
ParameterTypBeschreibung
pathStringDer vollständig qualifizierte oder der relative Pfad zur Archivdatei.
loadOptionsRarArchiveLoadOptionsOptionen zum Laden bestehender Archive mit.

Ausnahmen

AusnahmeBedingung
ArgumentNullExceptionpath ist Null.
SecurityExceptionDer Anrufer verfügt nicht über die erforderliche Zugriffsberechtigung.
ArgumentExceptionDerpath leer ist, nur Leerzeichen enthält oder ungültige Zeichen enthält.
UnauthorizedAccessExceptionZugriff auf Dateipath ist abgelehnt.
PathTooLongExceptionDie angegebenepath, Dateiname oder beide überschreiten die vom System definierte maximale Länge. Beispielsweise müssen auf Windows-basierten Plattformen Pfade weniger als 248 Zeichen und Dateinamen weniger als 260 Zeichen umfassen.
NotSupportedExceptionDatei unterpath enthält einen Doppelpunkt (:) in der Mitte der Zeichenfolge.

Bemerkungen

Dieser Konstruktor dekomprimiert keinen Eintrag. SehenOpen Methode zum Dekomprimieren.

Beispiele

Das folgende Beispiel extrahiert ein Archiv und dekomprimiert dann den ersten Eintrag in aMemoryStream.

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

Siehe auch


RarArchive(Stream, RarArchiveLoadOptions)

Initialisiert eine neue Instanz vonRarArchive Klasse und Liste der zusammengesetzten Einträge können aus dem Archiv extrahiert werden.

public RarArchive(Stream sourceStream, RarArchiveLoadOptions loadOptions = null)
ParameterTypBeschreibung
sourceStreamStreamDie Quelle des Archivs.
loadOptionsRarArchiveLoadOptionsOptionen zum Laden bestehender Archive mit.

Ausnahmen

AusnahmeBedingung
ArgumentExceptionsourceStream ist nicht auffindbar.
InvalidDataExceptionFalsche Signatur für Archiv. - oder - Die Datei ist kein RAR-Archiv.
InvalidOperationException

Bemerkungen

Dieser Konstruktor dekomprimiert keinen Eintrag. SehenOpen Methode zum Dekomprimieren.

Beispiele

Das folgende Beispiel entschlüsselt und dekomprimiert den ersten Eintrag in aMemoryStream.

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

Siehe auch