Class SevenZipArchiveEntry

Class SevenZipArchiveEntry

Der Name: Aspose.Zip.SevenZip Versammlung: Aspose.Zip.dll (25.5.0)

Es handelt sich um eine einzige Datei innerhalb des 7z-Archives.

public abstract class SevenZipArchiveEntry : IArchiveFileEntry

Inheritance

object SevenZipArchiveEntry

Derived

SevenZipArchiveEntryEncrypted , SevenZipArchiveEntryPlain

Implements

IArchiveFileEntry

Vererbte Mitglieder

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

Remarks

Geben Sie einen Aspose.Zip.SevenZip.SevenZipArchiveEntry zum Aspose.Zip.SevenZip.SevenZipArchiveEntry verschlüsselt, um festzustellen, ob der Eingang verschlüsselt ist oder nicht.

Properties

CompressedSize

Er erhält die Größe einer komprimierten Datei.

public ulong CompressedSize { get; }

Eigentumswert

ulong

CompressionSettings

Er erhält Einstellungen für Kompression oder Decompression.

public SevenZipCompressionSettings CompressionSettings { get; }

Eigentumswert

SevenZipCompressionSettings

FileAttributes

Er erhält Dateiattribute aus einem Host-System.

protected FileAttributes FileAttributes { get; }

Eigentumswert

FileAttributes

IsDirectory

Er erhält einen Wert, der angibt, ob der Eingang ein Katalog darstellt.

public bool IsDirectory { get; }

Eigentumswert

bool

ModificationTime

Er erhält das letzte geänderte Datum und Uhrzeit.

public DateTime ModificationTime { get; }

Eigentumswert

DateTime

Name

Gibt den Namen der Eingabe innerhalb des Archivs.

public string Name { get; protected set; }

Eigentumswert

string

Source

Erhalten Sie den Datenquelle-Stream für den Eingang.

protected Stream Source { get; }

Eigentumswert

Stream

UncompressedSize

Er bekommt die Größe eines ursprünglichen Datei.

public ulong UncompressedSize { get; }

Eigentumswert

ulong

Methods

Extract(String und String)

Er extrahiert den Eingang zum Dateisystem durch den angegebenen Weg.

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

Parameters

path string

Der Weg zum Zieldatei.Wenn die Datei bereits existiert, wird sie übergeschrieben.

password string

Optional Passwort für die Verschlüsselung.

Returns

FileInfo

Die Dateinformation einer zusammengeführten Datei.

Examples

using (var archive = new SevenZipArchive("archive.7z"))
{
    archive.Entries[0].Extract("data.bin");
}

Exceptions

ArgumentNullException

path’ is null.

SecurityException

Der Anrufgeber hat nicht die erforderliche Erlaubnis für den Zugang.

ArgumentException

Die path’ ist leer, enthält nur weiße Räume oder enthält ungültige Zeichen.

UnauthorizedAccessException

Der Zugriff auf die Datei path" wird abgelehnt.

PathTooLongException

Die angegebenen path’, Dateinamen, oder beide überschreiten die Systemdefinierte maximale Länge. Zum Beispiel auf Windows-basierten Plattformen müssen die Paths weniger als 248 Zeichen und Dateinamen weniger als 260 Zeichen sein.

NotSupportedException

Die Datei bei path’ enthält eine Kolonne (:) in der Mitte der Zeile.

InvalidDataException

Das Archiv ist korrupt.

Extract(Stream und String)

Entfernen Sie den Eingang zum bereitgestellten Strom.

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

Parameters

destination Stream

Destination Stream. muss geschrieben werden.

password string

Optional Passwort für die Verschlüsselung.

Examples

Entfernen Sie einen Zip-Archiv mit einem Passwort.

using (var archive = new SevenZipArchive("archive.7z"))
{
    archive.Entries[0].Extract(httpResponseStream);
}

Exceptions

ArgumentException

destination’ does not support writing.

InvalidOperationException

Das Archiv ist nicht für die Extraction geöffnet. - oder - Dieser Beitrag ist ein Katalog.

InvalidDataException

falsche Daten innerhalb des Eingangs.

FinalizeCompressedData(Stream und Byte[])

Schreiben Sie für den Ausgangstrom alle Header, die komprimierte Daten folgen.

protected abstract int FinalizeCompressedData(Stream outputStream, byte[] encoderProperties)

Parameters

outputStream Stream

Ausgangstrom für den Eingang.

encoderProperties byte [][]

Eigenschaften des Kompressors.

Returns

int

Anzahl der “technischen” Bytes, die nach Eingang signifikanten Datenblocks hinzugefügt wurden.

GetDestinationStream(Stream)

Zielstrom für den Eingang, kann dekoriert werden.

protected abstract Stream GetDestinationStream(Stream outputStream)

Parameters

outputStream Stream

Ausgangstrom für den Eingang.

Returns

Stream

Der Zielstrom für die Eingangskompression.

Open(String)

ffnet den Eingang für die Extraktion und bietet einen Strom mit Eingangsgehalt.

public Stream Open(string password = null)

Parameters

password string

Optional Passwort für die Verschlüsselung.

Returns

Stream

Der Strom, der den Inhalt des Eingangs darstellt.

Examples

Verwendung:Stream decompressed = entry.Open();

.NET 4.0 und höher - verwenden Sie Stream.CopyTo Methode:decompressed.CopyTo(httpResponse.OutputStream)

.NET 3.5 und früher - Kopieren von Byten manuell:

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

#### Remarks

Read from the stream to get the original content of a file. See examples section.

#### Exceptions

 [InvalidOperationException](https://learn.microsoft.com/dotnet/api/system.invalidoperationexception)

The archive is not opened for extraction. - or - This entry is a directory.

 [InvalidDataException](https://learn.microsoft.com/dotnet/api/system.io.invaliddataexception)

Wrong data within the entry.

### <a id="Aspose_Zip_SevenZip_SevenZipArchiveEntry_CompressionProgressed"></a> CompressionProgressed

Raises when a portion of raw stream compressed.

```csharp
public event EventHandler<progresseventargs> CompressionProgressed

Ereignis Typ

EventHandler &undlt; ProgressEventArgs >

Examples

archive.Entries[0].CompressionProgressed += (s, e) =&gt; { int percent = (int)((100 * (long)e.ProceededBytes) / entrySourceStream.Length); };

Remarks

Event-Sender ist eine Aspose.Zip.SevenZip.SevenZipArchiveEntry-Instanz.

Nicht in Multithread-Modus für LZMA2-Einträge anruft.

 Deutsch