Class RarArchive

Class RarArchive

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

Diese Klasse stellt eine RAR-Archivdatei dar. Verwenden Sie sie, um RAR-Archive zu extrahieren.

public class RarArchive : IArchive, IDisposable

Vererbung

objectRarArchive

Implementiert

IArchive, IDisposable

Vererbte Mitglieder

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

Konstruktoren

RarArchive(string, RarArchiveLoadOptions)

Initialisiert eine neue Instanz der Aspose.Zip.Rar.RarArchive-Klasse und erstellt eine Liste von Einträgen, die aus dem Archiv extrahiert werden können.

public RarArchive(string path, RarArchiveLoadOptions loadOptions = null)

Parameter

path string

Der vollständig qualifizierte oder relative Pfad zur Archivdatei.

loadOptions RarArchiveLoadOptions

Optionen zum Laden eines vorhandenen Archivs.

Beispiele

Das folgende Beispiel extrahiert ein Archiv und dekomprimiert dann den ersten Eintrag in einen 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);
    }
}

Bemerkungen

Dieser Konstruktor dekomprimiert keinen Eintrag. Siehe die Methode Aspose.Zip.Rar.RarArchiveEntry.Open(System.String) zum Dekomprimieren.

Ausnahmen

ArgumentNullException

path ist null.

SecurityException

Der Aufrufer hat nicht die erforderliche Berechtigung zum Zugreifen.

ArgumentException

Der path ist leer, enthält nur Leerzeichen oder ungültige Zeichen.

UnauthorizedAccessException

Der Zugriff auf die Datei path ist verweigert.

PathTooLongException

Der angegebene path, Dateiname oder beides überschreitet die maximal zulässige Länge des Systems. Zum Beispiel müssen Pfade auf Windows-basierten Plattformen weniger als 248 Zeichen und Dateinamen weniger als 260 Zeichen lang sein.

NotSupportedException

Die Datei unter path enthält einen Doppelpunkt (:) in der Mitte des Strings.

FileNotFoundException

Die Datei wurde nicht gefunden.

DirectoryNotFoundException

Der angegebene Pfad ist ungültig, beispielsweise weil er sich auf einem nicht zugeordneten Laufwerk befindet.

IOException

Die Datei ist bereits geöffnet.

RarArchive(Stream, RarArchiveLoadOptions)

Initialisiert eine neue Instanz der Aspose.Zip.Rar.RarArchive-Klasse und erstellt eine Liste von Einträgen, die aus dem Archiv extrahiert werden können.

public RarArchive(Stream sourceStream, RarArchiveLoadOptions loadOptions = null)

Parameter

sourceStream Stream

Die Quelle des Archivs.

loadOptions RarArchiveLoadOptions

Optionen zum Laden eines vorhandenen Archivs.

Beispiele

Das folgende Beispiel entschlüsselt und dekomprimiert den ersten Eintrag in einen 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);
    }
}

Bemerkungen

Dieser Konstruktor dekomprimiert keinen Eintrag. Siehe die Methode Aspose.Zip.Rar.RarArchiveEntry.Open(System.String) zum Dekomprimieren.

Ausnahmen

ArgumentException

sourceStream ist nicht durchsuchbar.

InvalidDataException

Falsche Signatur für das Archiv. - oder - Die Datei ist kein RAR-Archiv.

Eigenschaften

Entries

Erhält die Einträge vom Typ Aspose.Zip.Rar.RarArchiveEntry, die das RAR-Archiv bilden.

public ReadOnlyCollection<rararchiveentry> Entries { get; }

Eigenschaftswert

ReadOnlyCollection<RarArchiveEntry&gt;

Methoden

Dispose(bool)

Führt anwendungsspezifische Aufgaben aus, die mit dem Freigeben, Zurücksetzen oder Freigeben nicht verwalteter Ressourcen verbunden sind.

protected virtual void Dispose(bool disposing)

Parameter

disposing bool

Ob verwaltete Ressourcen freigegeben werden sollen.

Dispose()

Führt anwendungsspezifische Aufgaben aus, die mit dem Freigeben, Zurücksetzen oder Freigeben nicht verwalteter Ressourcen verbunden sind.

public void Dispose()

ExtractToDirectory(string, string)

Extrahiert alle Dateien im Archiv in das angegebene Verzeichnis.

[Obsolete("Für die Extraktion eines verschlüsselten RAR-Archivs geben Sie bitte das Passwort im Konstruktor mit Aspose.Zip.Rar.RarArchiveLoadOptions.DecryptionPassword an.")]
public void ExtractToDirectory(string destinationDirectory, string password = null)

Parameter

destinationDirectory string

Der Pfad zum Verzeichnis, in das die extrahierten Dateien abgelegt werden sollen.

password string

Optionales Passwort zur Entschlüsselung.

Beispiele

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

Bemerkungen

Wenn das Verzeichnis nicht existiert, wird es erstellt.

Ausnahmen

ArgumentNullException

destinationDirectory ist null.

PathTooLongException

Der angegebene Pfad, Dateiname oder beides überschreiten die maximal zulässige Länge des Systems. Zum Beispiel müssen Pfade auf Windows-basierten Plattformen weniger als 248 Zeichen und Dateinamen weniger als 260 Zeichen lang sein.

SecurityException

Der Aufrufer hat nicht die erforderliche Berechtigung zum Zugreifen auf das vorhandene Verzeichnis.

NotSupportedException

Wenn das Verzeichnis nicht existiert, enthält der Pfad ein Doppelpunktzeichen (:) das nicht Teil eines Laufwerkslabels (“C:") ist.

ArgumentException

destinationDirectory ist eine null-längen Zeichenfolge, enthält nur Leerzeichen oder enthält ein oder mehrere ungültige Zeichen. Sie können ungültige Zeichen mit der Methode System.IO.Path.GetInvalidPathChars abfragen. - oder - Der Pfad ist mit oder enthält nur ein Doppelpunktzeichen (:).

IOException

Das Verzeichnis, das durch den Pfad angegeben ist, ist eine Datei. - oder - Der Netzwerkname ist unbekannt.

ExtractToDirectory(string)

Extrahiert alle Dateien im Archiv in das angegebene Verzeichnis.

public void ExtractToDirectory(string destinationDirectory)

Parameter

destinationDirectory string

Der Pfad zum Verzeichnis, in das die extrahierten Dateien abgelegt werden sollen.

Beispiele

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

Bemerkungen

Wenn das Verzeichnis nicht existiert, wird es erstellt.

Ausnahmen

ArgumentNullException

destinationDirectory ist null.

PathTooLongException

Der angegebene Pfad, Dateiname oder beides überschreiten die maximal zulässige Länge des Systems. Zum Beispiel müssen Pfade auf Windows-basierten Plattformen weniger als 248 Zeichen und Dateinamen weniger als 260 Zeichen lang sein.

SecurityException

Der Aufrufer hat nicht die erforderliche Berechtigung zum Zugreifen auf das vorhandene Verzeichnis.

NotSupportedException

Wenn das Verzeichnis nicht existiert, enthält der Pfad ein Doppelpunktzeichen (:) das nicht Teil eines Laufwerkslabels (“C:") ist.

ArgumentException

destinationDirectory ist eine null-längen Zeichenfolge, enthält nur Leerzeichen oder enthält ein oder mehrere ungültige Zeichen. Sie können ungültige Zeichen mit der Methode System.IO.Path.GetInvalidPathChars abfragen. - oder - Der Pfad ist mit oder enthält nur ein Doppelpunktzeichen (:).

IOException

Das Verzeichnis, das durch den Pfad angegeben ist, ist eine Datei. - oder - Der Netzwerkname ist unbekannt.

 Deutsch