Class RarArchiveEntry

Class RarArchiveEntry

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

Reprezentuje pojedynczy plik w archiwum.

public abstract class RarArchiveEntry : IArchiveFileEntry

Dziedziczenie

objectRarArchiveEntry

Pochodne

RarArchiveEntryEncrypted, RarArchiveEntryPlain

Implementuje

IArchiveFileEntry

Członkowie dziedziczeni

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

Uwagi

Rzuć instancję Aspose.Zip.Rar.RarArchiveEntry na Aspose.Zip.Rar.RarArchiveEntryEncrypted, aby określić, czy wpis jest zaszyfrowany, czy nie.

Właściwości

CompressedSize

Zyskuje rozmiar skompresowanego pliku.

public ulong CompressedSize { get; }

Wartość właściwości

ulong

CreationTime

Zyskuje datę i czas utworzenia.

public DateTime CreationTime { get; }

Wartość właściwości

DateTime

IsDirectory

Zyskuje wartość wskazującą, czy wpis reprezentuje katalog.

public bool IsDirectory { get; }

Wartość właściwości

bool

LastAccessTime

Zyskuje datę i czas ostatniego dostępu.

public DateTime LastAccessTime { get; }

Wartość właściwości

DateTime

ModificationTime

Zyskuje datę i czas ostatniej modyfikacji.

public DateTime ModificationTime { get; }

Wartość właściwości

DateTime

Name

Zyskuje nazwę wpisu w archiwum.

public string Name { get; }

Wartość właściwości

string

Source

Zyskuje strumień źródłowy danych dla wpisu.

protected Stream Source { get; set; }

Wartość właściwości

Stream

UncompressedSize

Zyskuje rozmiar oryginalnego pliku.

public ulong UncompressedSize { get; }

Wartość właściwości

ulong

Metody

Extract(string, string)

Wydobywa wpis do systemu plików według podanej ścieżki.

public FileInfo Extract(string path, string password = null)

Parametry

path string

Ścieżka do docelowego pliku. Jeśli plik już istnieje, zostanie nadpisany.

password string

Opcjonalne hasło do deszyfrowania.

Zwraca

FileInfo

Informacje o pliku skomponowanego pliku.

Przykłady

Wydobądź dwa wpisy z archiwum 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");
    }
}

Wyjątki

ArgumentNullException

path jest null.

SecurityException

Wywołujący nie ma wymaganych uprawnień do dostępu.

ArgumentException

path jest pusty, zawiera tylko białe znaki lub zawiera nieprawidłowe znaki.

UnauthorizedAccessException

Dostęp do pliku path jest zabroniony.

PathTooLongException

Podana path, nazwa pliku lub obie przekraczają maksymalną długość zdefiniowaną przez system. Na przykład na platformach opartych na systemie Windows ścieżki muszą mieć mniej niż 248 znaków, a nazwy plików muszą mieć mniej niż 260 znaków.

NotSupportedException

Plik w path zawiera dwukropek (:) w środku ciągu.

FileNotFoundException

Plik nie został znaleziony.

DirectoryNotFoundException

Podana ścieżka jest nieprawidłowa, na przykład znajduje się na niewidocznej dysku.

IOException

Plik jest już otwarty.

InvalidDataException

Dane są uszkodzone. -lub- Weryfikacja CRC lub MAC nie powiodła się dla wpisu.

Extract(Stream, string)

Wydobywa wpis do podanego strumienia.

public void Extract(Stream destination, string password = null)

Parametry

destination Stream

Strumień docelowy. Musi być zapisywalny.

password string

Opcjonalne hasło do deszyfrowania.

Przykłady

Wydobądź wpis z archiwum rar z hasłem.

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

Wyjątki

InvalidDataException

Weryfikacja CRC lub MAC nie powiodła się dla wpisu.

ArgumentException

destination nie obsługuje zapisu.

InvalidDataException

Dane są uszkodzone. -lub- Weryfikacja CRC lub MAC nie powiodła się dla wpisu.

Open(string)

Otwiera wpis do wydobycia i zapewnia strumień z dekompresowaną zawartością wpisu.

public Stream Open(string password = null)

Parametry

password string

Opcjonalne hasło do deszyfrowania. Może być również ustawione w Aspose.Zip.Rar.RarArchiveLoadOptions.DecryptionPassword.

Zwraca

Stream

Strumień, który reprezentuje zawartość wpisu.

Przykłady

Użycie: Stream decompressed = entry.Open();

.NET 4.0 i wyżej - użyj metody Stream.CopyTo: decompressed.CopyTo(httpResponse.OutputStream)

.NET 3.5 i wcześniej - kopiuj bajty ręcznie:

byte[] buffer = new byte[8192];
int bytesRead;
while (0 < (bytesRead = decompressed.Read(buffer, 0, buffer.Length)))
 fileStream.Write(buffer, 0, bytesRead);
```</p>

#### Uwagi

<p>Odczytaj ze strumienia, aby uzyskać oryginalną zawartość pliku. Zobacz sekcję przykładów.</p>

### <a id="Aspose_Zip_Rar_RarArchiveEntry_ExtractionProgressed"></a> ExtractionProgressed

Wydarza się, gdy część surowego strumienia jest wydobywana.

```csharp
public event EventHandler<progresseventargs> ExtractionProgressed

Typ zdarzenia

EventHandler<ProgressEventArgs&gt;

Przykłady

archive.Entries[0].ExtractionProgressed += (s, e) =&gt; { int percent = (int)((100 * e.ProceededBytes) / ((RarArchiveEntry)s).UncompressedSize); };

Uwagi

Nadawcą zdarzenia jest instancja Aspose.Zip.Rar.RarArchiveEntry.

 Polski