Archive.Archive
Archive(ArchiveEntrySettings)
Initialisiert eine neue Instanz vonArchive
Klasse mit optionalen Einstellungen für ihre Einträge.
public Archive(ArchiveEntrySettings newEntrySettings = null)
Parameter | Typ | Beschreibung |
---|---|---|
newEntrySettings | ArchiveEntrySettings | Komprimierungs- und Verschlüsselungseinstellungen, die für neu hinzugefügte verwendet werdenArchiveEntry items. Wenn nicht angegeben, würde die häufigste Deflate-Komprimierung ohne Verschlüsselung verwendet werden. |
Beispiele
Das folgende Beispiel zeigt, wie eine einzelne Datei mit Standardeinstellungen komprimiert wird.
using (FileStream zipFile = File.Open("archive.zip", FileMode.Create))
{
using (var archive = new Archive())
{
archive.CreateEntry("data.bin", "file.dat");
archive.Save(zipFile);
}
}
Siehe auch
- class ArchiveEntrySettings
- class Archive
- namensraum Aspose.Zip
- Montage Aspose.Zip
Archive(Stream, ArchiveLoadOptions, ArchiveEntrySettings)
Initialisiert eine neue Instanz vonArchive
Klasse und Liste der zusammengesetzten Einträge können aus dem Archiv extrahiert werden.
public Archive(Stream sourceStream, ArchiveLoadOptions loadOptions = null,
ArchiveEntrySettings newEntrySettings = null)
Parameter | Typ | Beschreibung |
---|---|---|
sourceStream | Stream | Die Quelle des Archivs. |
loadOptions | ArchiveLoadOptions | Optionen zum Laden bestehender Archive mit. |
newEntrySettings | ArchiveEntrySettings | Komprimierungs- und Verschlüsselungseinstellungen, die für neu hinzugefügte verwendet werdenArchiveEntry items. Wenn nicht angegeben, würde die häufigste Deflate-Komprimierung ohne Verschlüsselung verwendet werden. |
Ausnahmen
Ausnahme | Bedingung |
---|---|
ArgumentException | sourceStream ist nicht auffindbar. |
InvalidDataException | Der Verschlüsselungsheader für AES widerspricht der WinZip-Komprimierungsmethode. |
Bemerkungen
Dieser Konstruktor dekomprimiert keinen Eintrag. SehenOpen
Methode zum Dekomprimieren.
Beispiele
Das folgende Beispiel extrahiert ein verschlüsseltes Archiv und dekomprimiert dann den ersten Eintrag in aMemoryStream
.
var fs = File.OpenRead("encrypted.zip");
var extracted = new MemoryStream();
using (Archive archive = new Archive(fs, new ArchiveLoadOptions() { 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
- class ArchiveLoadOptions
- class ArchiveEntrySettings
- class Archive
- namensraum Aspose.Zip
- Montage Aspose.Zip
Archive(string, ArchiveLoadOptions, ArchiveEntrySettings)
Initialisiert eine neue Instanz vonArchive
Klasse und Liste der zusammengesetzten Einträge können aus dem Archiv extrahiert werden.
public Archive(string path, ArchiveLoadOptions loadOptions = null,
ArchiveEntrySettings newEntrySettings = null)
Parameter | Typ | Beschreibung |
---|---|---|
path | String | Der vollständig qualifizierte oder der relative Pfad zur Archivdatei. |
loadOptions | ArchiveLoadOptions | Optionen zum Laden bestehender Archive mit. |
newEntrySettings | ArchiveEntrySettings | Komprimierungs- und Verschlüsselungseinstellungen, die für neu hinzugefügte verwendet werdenArchiveEntry items. Wenn nicht angegeben, würde die häufigste Deflate-Komprimierung ohne Verschlüsselung verwendet werden. |
Ausnahmen
Ausnahme | Bedingung |
---|---|
ArgumentNullException | path ist Null. |
SecurityException | Der Anrufer verfügt nicht über die erforderliche Zugriffsberechtigung. |
ArgumentException | Derpath leer ist, nur Leerzeichen enthält oder ungültige Zeichen enthält. |
UnauthorizedAccessException | Zugriff auf Dateipath ist abgelehnt. |
PathTooLongException | Die 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. |
NotSupportedException | Datei 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 verschlüsseltes Archiv und dekomprimiert dann den ersten Eintrag in aMemoryStream
.
var extracted = new MemoryStream();
using (Archive archive = new Archive("encrypted.zip", new ArchiveLoadOptions() { 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
- class ArchiveLoadOptions
- class ArchiveEntrySettings
- class Archive
- namensraum Aspose.Zip
- Montage Aspose.Zip