Class ArchiveEntry

Class ArchiveEntry

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

Eine einzige Datei innerhalb des Archivs.

public abstract class ArchiveEntry : IArchiveFileEntry

Inheritance

object ArchiveEntry

Derived

ArchiveEntryEncrypted , ArchiveEntryPlain

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 eine Aspose.Zip.ArchiveEntry-Instanz auf Aspose.Zip.ArchiveEntryEncrypted, um festzustellen, ob die Eingabe verschlüsselt ist oder nicht.

Constructors

ArchiveEntry(String, CompressionSettings, Funktion < Stream>und uint)

Initialisiert eine neue Instanz der Aspose.Zip.ArchiveEntry Klasse.

protected ArchiveEntry(string name, CompressionSettings compressionSettings, Func<stream> sourceProvider, uint fileAttributes)

Parameters

name string

Eintritt Name.

compressionSettings CompressionSettings

Einstellungen für Kompression oder Decompression.

sourceProvider Func &undlt; Stream >

Methode der Rückgabe von Strom mit Eingangsdaten entweder zu komprimieren.

fileAttributes uint

Attribute aus dem Dateisystem.

ArchiveEntry(String, CompressionSettings, Stream, Uint, FileSystemInfo)

Initialisiert eine neue Instanz der Aspose.Zip.ArchiveEntry Klasse.

protected ArchiveEntry(string name, CompressionSettings compressionSettings, Stream source, uint fileAttributes, FileSystemInfo fileInfo = null)

Parameters

name string

Eintritt Name.

compressionSettings CompressionSettings

Einstellungen für Kompression oder Decompression.

source Stream

Stream mit Eingangsdaten entweder zu komprimieren oder zu dekomprimieren.

fileAttributes uint

Attribute aus dem Dateisystem.

fileInfo FileSystemInfo

Datei oder directory info die Eingabe basiert auf.

Properties

Comment

Er bekommt einen Kommentar von der Eingabe innerhalb des Archivs.

public string Comment { get; protected set; }

Eigentumswert

string

CompressedSize

Erhält die Größe der komprimierten Datei.

public ulong CompressedSize { get; }

Eigentumswert

ulong

CompressionSettings

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

public CompressionSettings CompressionSettings { get; }

Eigentumswert

CompressionSettings

DataSource

Quelle für den Eingriff, wenn der Eingang in das Archiv hinzugefügt wurde, nicht extrahiert.

public Stream DataSource { get; }

Eigentumswert

Stream

Remarks

Diese Quelle kann in einigen Fällen innerhalb der Methode “Archive.Save” zugeordnet werden.

FileAttributes

Er erhält Dateiattribute aus dem 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 oder stellt die letzte modifizierte Datum und Uhrzeit fest.

public DateTime ModificationTime { get; set; }

Eigentumswert

DateTime

Name

Gibt den Namen der Eingabe innerhalb des Archivs.

public string Name { get; protected set; }

Eigentumswert

string

UncompressedSize

Erhält die Größe der 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 der zusammengeführten Datei.

Examples

Entfernen Sie zwei Einträge aus Zip-Archiv, jede mit eigenem Passwort

using (FileStream zipFile = File.Open("archive.zip", FileMode.Open))
{
    using (Archive archive = new Archive(zipFile))
    {
        archive.Entries[0].Extract("first.bin", "first_pass");
        archive.Entries[1].Extract("second.bin", "second_pass");
    }
}

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.

FileNotFoundException

Die Datei ist nicht gefunden.

DirectoryNotFoundException

Der angegebenen Weg ist ungültig, z. B. auf einem unmapped Drive.

IOException

Die Datei ist bereits geöffnet.

InvalidDataException

Daten sind korrupt. -oder- CRC oder MAC-Verifizierung versagt für den Eingang.

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 (FileStream zipFile = File.Open("archive.zip", FileMode.Open))
{
    using (Archive archive = new Archive(zipFile))
    {
        archive.Entries[0].Extract(httpResponseStream, "p@s$");
    }
}

Exceptions

InvalidDataException

Daten sind korrupt. -oder- CRC oder MAC-Verifizierung versagt für den Eingang.

IOException

Die Quelle ist korrupt oder nicht lesbar.

ArgumentException

destination’ does not support writing.

Open(String)

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

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 &lt; (bytesRead = decompressed.Read(buffer, 0, buffer.Length)))
 fileStream.Write(buffer, 0, bytesRead);
```</p>

#### Remarks

<p>Read from the stream to get the original content of a file. See examples section.</p>

#### Exceptions

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

The archive is in an incorrect state.

### <a id="Aspose_Zip_ArchiveEntry_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.ArchiveEntry-Instanz.

ExtractionProgressed

Erhöht sich, wenn ein Teil des Rohstroms extrahiert wird.

public event EventHandler<progresseventargs> ExtractionProgressed

Ereignis Typ

EventHandler &undlt; ProgressEventArgs >

Examples

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

Remarks

Event-Sender ist eine Aspose.Zip.ArchiveEntry-Instanz.

 Deutsch