ZipFile.ExtractToDirectory Methode

Definition

Extrahiert alle Dateien im angegebenen ZIP-Archiv in ein Verzeichnis im Dateisystem.

Überlädt

ExtractToDirectory(String, String, Encoding, Boolean)

Extrahiert alle Dateien im angegebenen Archiv in ein Verzeichnis im Dateisystem.

ExtractToDirectory(Stream, String, Encoding, Boolean)

Extrahiert alle Dateien aus dem zip-Archiv, das im angegebenen Stream gespeichert ist, und platziert sie im angegebenen Zielverzeichnis im Dateisystem, verwendet die angegebene Zeichencodierung für Eingabenamen und ermöglicht optional die Auswahl, ob die Dateien im Zielverzeichnis überschrieben werden sollen.

ExtractToDirectory(String, String, Encoding)

Extrahiert alle Dateien im angegebenen ZIP-Archiv in ein Verzeichnis im Dateisystem und verwendet die angegebene Zeichencodierung für Eintragsnamen.

ExtractToDirectory(String, String, Boolean)

Extrahiert alle Dateien im angegebenen Archiv in ein Verzeichnis im Dateisystem.

ExtractToDirectory(Stream, String, Boolean)

Extrahiert alle Dateien aus dem ZIP-Archiv, das im angegebenen Stream gespeichert ist, und platziert sie im angegebenen Zielverzeichnis im Dateisystem und ermöglicht optional die Auswahl, ob die Dateien im Zielverzeichnis überschrieben werden sollen.

ExtractToDirectory(String, String)

Extrahiert alle Dateien im angegebenen ZIP-Archiv in ein Verzeichnis im Dateisystem.

ExtractToDirectory(Stream, String)

Extrahiert alle Dateien aus dem ZIP-Archiv, das im angegebenen Stream gespeichert ist, und platziert sie im angegebenen Zielverzeichnis im Dateisystem.

ExtractToDirectory(Stream, String, Encoding)

Extrahiert alle Dateien aus dem ZIP-Archiv, das im angegebenen Stream gespeichert ist, und platziert sie im angegebenen Zielverzeichnis im Dateisystem und verwendet die angegebene Zeichencodierung für Eingabenamen.

ExtractToDirectory(String, String, Encoding, Boolean)

Quelle:
ZipFile.Extract.cs
Quelle:
ZipFile.Extract.cs
Quelle:
ZipFile.Extract.cs

Extrahiert alle Dateien im angegebenen Archiv in ein Verzeichnis im Dateisystem.

public:
 static void ExtractToDirectory(System::String ^ sourceArchiveFileName, System::String ^ destinationDirectoryName, System::Text::Encoding ^ entryNameEncoding, bool overwriteFiles);
public static void ExtractToDirectory (string sourceArchiveFileName, string destinationDirectoryName, System.Text.Encoding? entryNameEncoding, bool overwriteFiles);
public static void ExtractToDirectory (string sourceArchiveFileName, string destinationDirectoryName, System.Text.Encoding entryNameEncoding, bool overwriteFiles);
static member ExtractToDirectory : string * string * System.Text.Encoding * bool -> unit
Public Shared Sub ExtractToDirectory (sourceArchiveFileName As String, destinationDirectoryName As String, entryNameEncoding As Encoding, overwriteFiles As Boolean)

Parameter

sourceArchiveFileName
String

Der zu extrahierende Pfad zum Archiv des Dateisystem.

destinationDirectoryName
String

Der Pfad zum Zielverzeichnis im Dateisystem.

entryNameEncoding
Encoding

Die Codierung, die beim Lesen von Eintragsnamen in ZipArchive verwendet werden soll.

overwriteFiles
Boolean

true, wenn Dateien überschrieben werden sollen, andernfalls false.

Ausnahmen

sourceArchiveFileName oder destinationDirectoryName ist eine leere Zeichenfolge und enthält nur Leerzeichen oder mindestens ein gemäß der Definition von InvalidPathChars ungültiges Zeichen.

- oder -

entryNameEncoding wird auf eine andere Unicode-Codierung als UTF-8 festgelegt.

sourceArchiveFileName oder destinationDirectoryName ist null.

sourceArchiveFileName oder destinationDirectoryName gibt einen Pfad, einen Dateinamen oder beides an, der bzw. die die vom System definierte Länge überschreiten.

Der von sourceArchiveFileName oder destinationDirectoryName angegebene Pfad ist ungültig (er befindet sich z. B. auf einem nicht zugeordneten Laufwerk).

overwriteFiles ist false , und ein zu extrahierener Archiveintrag hat denselben Namen wie eine Datei, die bereits in destinationDirectoryNamevorhanden ist.

- oder -

Ein E/A-Fehler ist aufgetreten.

- oder -

Der Name von ZipArchiveEntry ist eine leere Zeichenfolge, die nur Leerzeichen oder mindestens ein gemäß der Definition von InvalidPathChars ungültiges Zeichen enthält.

- oder -

Die Extraktion von ZipArchiveEntry würde in einem Dateiziel resultieren, das sich außerhalb des Zielverzeichnisses befindet (z. B. aufgrund von Accessoren übergeordneter Verzeichnisse).

- oder -

Eine ZipArchiveEntry-Klasse hat denselben Namen wie ein bereits extrahierter Eintrag aus demselben Archiv.

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.

sourceArchiveFileName oder destinationDirectoryName weist ein ungültiges Format auf.

sourceArchiveFileName wurde nicht gefunden.

Das in sourceArchiveFileName festgelegte Archiv ist keine gültige ZipArchive-Klasse.

- oder -

Ein Archiveintrag wurde nicht gefunden oder ist fehlerhaft.

- oder -

Ein Archiveintrag wurde mit einer Komprimierungsmethode komprimiert, die nicht unterstützt wird.

Hinweise

Wenn beim Extrahieren des Archivs ein Fehler auftritt, bleibt das Archiv teilweise extrahiert.

Jeder Eintrag wird so extrahiert, dass die extrahierte Datei den gleichen relativen Pfad zu dem destinationDirectoryName aufweist, wie der Eintrag zum Archiv hat.

Die sourceArchiveFileName Parameter und destinationDirectoryName akzeptieren sowohl relative als auch absolute Pfade. Ein relativer Pfad wird relativ zum aktuellen Arbeitsverzeichnis interpretiert.

Wenn eine zu archivierende Datei eine ungültige Uhrzeit der letzten Änderung aufweist, werden das erste Datum und die erste Uhrzeit verwendet, die im Zip-Zeitstempelformat (Mitternacht am 1. Januar 1980) dargestellt werden können.

Gilt für:

ExtractToDirectory(Stream, String, Encoding, Boolean)

Quelle:
ZipFile.Extract.cs
Quelle:
ZipFile.Extract.cs

Extrahiert alle Dateien aus dem zip-Archiv, das im angegebenen Stream gespeichert ist, und platziert sie im angegebenen Zielverzeichnis im Dateisystem, verwendet die angegebene Zeichencodierung für Eingabenamen und ermöglicht optional die Auswahl, ob die Dateien im Zielverzeichnis überschrieben werden sollen.

public:
 static void ExtractToDirectory(System::IO::Stream ^ source, System::String ^ destinationDirectoryName, System::Text::Encoding ^ entryNameEncoding, bool overwriteFiles);
public static void ExtractToDirectory (System.IO.Stream source, string destinationDirectoryName, System.Text.Encoding? entryNameEncoding, bool overwriteFiles);
static member ExtractToDirectory : System.IO.Stream * string * System.Text.Encoding * bool -> unit
Public Shared Sub ExtractToDirectory (source As Stream, destinationDirectoryName As String, entryNameEncoding As Encoding, overwriteFiles As Boolean)

Parameter

source
Stream

Der Stream, aus dem das ZIP-Archiv extrahiert werden soll.

destinationDirectoryName
String

Der Pfad zum Verzeichnis, in dem die extrahierten Dateien abgelegt werden sollen, angegeben als relativer oder absoluter Pfad. Ein relativer Pfad wird relativ zum aktuellen Arbeitsverzeichnis interpretiert.

entryNameEncoding
Encoding

Die Codierung, die beim Lesen oder Schreiben von Eintragsnamen in diesem Archiv verwendet werden soll. Geben Sie einen Wert für diesen Parameter nur an, wenn eine Codierung für die Interoperabilität mit ZIP-Archiv-Tools und -Bibliotheken erforderlich ist, die die UTF-8-Codierung für Eintragsnamen nicht unterstützen.

overwriteFiles
Boolean

true, wenn Dateien überschrieben werden sollen, andernfalls false.

Ausnahmen

destinationDirectoryName> ist Empty, enthält nur Leerzeichen oder enthält mindestens ein ungültiges Zeichen.

- oder -

entryNameEncoding wird auf eine andere Unicode-Codierung als UTF-8 festgelegt.

destinationDirectoryName oder source ist null.

Der angegebene Pfad in destinationDirectoryName überschreitet die systemdefinierte maximale Länge.

Der angegebene Pfad ist ungültig (er befindet sich z. B. auf einem nicht zugeordneten Laufwerk).

Der Name eines Eintrags im Archiv ist Empty, enthält nur Leerraum oder enthält mindestens ein ungültiges Zeichen.

- oder -

Das Extrahieren eines Archiveintrags wird eine Datei erstellen, die sich außerhalb des Verzeichnisses befindet, das von destinationDirectoryName angegeben wird. (Zum Beispiel geschähe dies möglicherweise, wenn der Eintragsname Accessoren des übergeordneten Verzeichnisses enthält.)

- oder -

overwriteFiles ist false , und ein zu extrahierener Archiveintrag hat denselben Namen wie ein Eintrag, der bereits extrahiert wurde oder in destinationDirectoryNamevorhanden ist.

Der Aufrufer verfügt nicht über die erforderliche Berechtigung für den Zugriff auf das Archiv oder das Zielverzeichnis.

destinationDirectoryName enthält ein ungültiges Format.

Das im source Stream enthaltene Archiv ist kein gültiges ZIP-Archiv.

- oder -

Ein Archiveintrag wurde nicht gefunden oder ist fehlerhaft.

- oder -

Ein Archiveintrag wurde mit einer Komprimierungsmethode komprimiert, die nicht unterstützt wird.

Hinweise

Diese Methode erstellt das angegebene Verzeichnis und alle Unterverzeichnisse. Das Zielverzeichnis kann nicht bereits vorhanden sein. Ausnahmen im Zusammenhang mit der Überprüfung der Pfade in oder destinationDirectoryName den Dateien im ZIP-Archiv, das in source Parametern enthalten ist, werden vor der Extraktion ausgelöst. Andernfalls bleibt das Archiv teilweise extrahiert, wenn während der Extraktion ein Fehler auftritt. Jede extrahierte Datei weist denselben relativen Pfad zu dem von destinationDirectoryName angegebenen Verzeichnis auf wie der Quelleintrag zum Stammverzeichnis des Archivs. Wenn eine zu archivierende Datei eine ungültige Uhrzeit der letzten Änderung aufweist, werden das erste Datum und die erste Uhrzeit verwendet, die im Zip-Zeitstempelformat (Mitternacht am 1. Januar 1980) dargestellt werden können.

Gilt für:

ExtractToDirectory(String, String, Encoding)

Quelle:
ZipFile.Extract.cs
Quelle:
ZipFile.Extract.cs
Quelle:
ZipFile.Extract.cs

Extrahiert alle Dateien im angegebenen ZIP-Archiv in ein Verzeichnis im Dateisystem und verwendet die angegebene Zeichencodierung für Eintragsnamen.

public:
 static void ExtractToDirectory(System::String ^ sourceArchiveFileName, System::String ^ destinationDirectoryName, System::Text::Encoding ^ entryNameEncoding);
public static void ExtractToDirectory (string sourceArchiveFileName, string destinationDirectoryName, System.Text.Encoding entryNameEncoding);
public static void ExtractToDirectory (string sourceArchiveFileName, string destinationDirectoryName, System.Text.Encoding? entryNameEncoding);
static member ExtractToDirectory : string * string * System.Text.Encoding -> unit
Public Shared Sub ExtractToDirectory (sourceArchiveFileName As String, destinationDirectoryName As String, entryNameEncoding As Encoding)

Parameter

sourceArchiveFileName
String

Der Pfad zum Archiv, das extrahiert werden soll.

destinationDirectoryName
String

Der Pfad zum Verzeichnis, in dem die extrahierten Dateien abgelegt werden sollen, angegeben als relativer oder absoluter Pfad. Ein relativer Pfad wird relativ zum aktuellen Arbeitsverzeichnis interpretiert.

entryNameEncoding
Encoding

Die Codierung, die beim Lesen oder Schreiben von Eintragsnamen in diesem Archiv verwendet werden soll. Geben Sie einen Wert für diesen Parameter nur an, wenn eine Codierung für die Interoperabilität mit ZIP-Archiv-Tools und -Bibliotheken erforderlich ist, die die UTF-8-Codierung für Eintragsnamen nicht unterstützen.

Ausnahmen

destinationDirectoryName oder sourceArchiveFileName ist Empty, enthält nur Leerraum oder mindestens ein ungültiges Zeichen.

- oder -

entryNameEncoding wird auf eine andere Unicode-Codierung als UTF-8 festgelegt.

destinationDirectoryName oder sourceArchiveFileName ist null.

Der in destinationDirectoryName oder sourceArchiveFileName angegebene Pfad überschreitet die im System definierte maximale Länge ().

Der angegebene Pfad ist ungültig (er befindet sich z. B. auf einem nicht zugeordneten Laufwerk).

Der Name eines Eintrags im Archiv ist Empty, enthält nur Leerraum oder enthält mindestens ein ungültiges Zeichen.

- oder -

Das Extrahieren eines Archiveintrags wird eine Datei erstellen, die sich außerhalb des Verzeichnisses befindet, das von destinationDirectoryName angegeben wird. (Zum Beispiel geschähe dies möglicherweise, wenn der Eintragsname Accessoren des übergeordneten Verzeichnisses enthält.)

- oder -

Ein zu extrahierende Archiveintrag hat denselben Namen wie ein Eintrag, der bereits extrahiert wurde oder in destinationDirectoryNamevorhanden ist.

Der Aufrufer verfügt nicht über die erforderliche Berechtigung für den Zugriff auf das Archiv oder das Zielverzeichnis.

destinationDirectoryName oder sourceArchiveFileName enthält ein ungültiges Format.

sourceArchiveFileName wurde nicht gefunden.

Das Archiv, das von sourceArchiveFileName angegeben wurde, ist kein gültiges Zip-Archiv.

- oder -

Ein Archiveintrag wurde nicht gefunden oder ist fehlerhaft.

- oder -

Ein Archiveintrag wurde mit einer Komprimierungsmethode komprimiert, die nicht unterstützt wird.

Hinweise

Diese Methode erstellt bei Bedarf das angegebene Verzeichnis und alle Unterverzeichnisse. Ausnahmen im Zusammenhang mit der Überprüfung der Pfade in den Parametern oder sourceArchiveFileName werden vor der destinationDirectoryName Extraktion ausgelöst. Andernfalls bleibt das Archiv teilweise extrahiert, wenn während der Extraktion ein Fehler auftritt. Jede extrahierte Datei weist denselben relativen Pfad zu dem von destinationDirectoryName angegebenen Verzeichnis auf wie der Quelleintrag zum Stammverzeichnis des Archivs.

Wenn entryNameEncoding auf einen anderen Wert als nullfestgelegt ist, werden Eintragsnamen gemäß den folgenden Regeln decodiert:

  • Bei Eintragsnamen, bei denen das Sprachcodierungsflag (im universellen Bitflag des lokalen Dateiheaders) nicht festgelegt ist, werden die Eintragsnamen mithilfe der angegebenen Codierung decodiert.
  • Bei Einträgen, bei denen das Sprachcodierungsflag festgelegt ist, werden die Eintragsnamen mithilfe von UTF-8 decodiert.

Wenn entryNameEncoding auf nullfestgelegt ist, werden Eintragsnamen gemäß den folgenden Regeln decodiert:

  • Bei Einträgen, bei denen das Sprachcodierungsflag (im universellen Bitflag des lokalen Dateiheaders) nicht festgelegt ist, werden Eingabenamen mithilfe der aktuellen Systemstandardcodepage decodiert.
  • Bei Einträgen, bei denen das Sprachcodierungsflag festgelegt ist, werden die Eintragsnamen mithilfe von UTF-8 decodiert.

Gilt für:

ExtractToDirectory(String, String, Boolean)

Quelle:
ZipFile.Extract.cs
Quelle:
ZipFile.Extract.cs
Quelle:
ZipFile.Extract.cs

Extrahiert alle Dateien im angegebenen Archiv in ein Verzeichnis im Dateisystem.

public:
 static void ExtractToDirectory(System::String ^ sourceArchiveFileName, System::String ^ destinationDirectoryName, bool overwriteFiles);
public static void ExtractToDirectory (string sourceArchiveFileName, string destinationDirectoryName, bool overwriteFiles);
static member ExtractToDirectory : string * string * bool -> unit
Public Shared Sub ExtractToDirectory (sourceArchiveFileName As String, destinationDirectoryName As String, overwriteFiles As Boolean)

Parameter

sourceArchiveFileName
String

Der zu extrahierende Pfad zum Archiv des Dateisystem.

destinationDirectoryName
String

Der Pfad zum Zielverzeichnis im Dateisystem.

overwriteFiles
Boolean

true, wenn Dateien überschrieben werden sollen, andernfalls false.

Ausnahmen

sourceArchiveFileName oder destinationDirectoryName ist eine leere Zeichenfolge und enthält nur Leerzeichen oder mindestens ein gemäß der Definition von InvalidPathChars ungültiges Zeichen.

sourceArchiveFileName oder destinationDirectoryName ist null.

sourceArchiveFileName oder destinationDirectoryName gibt einen Pfad, einen Dateinamen oder beides an, der bzw. die die vom System definierte Länge überschreiten.

Der von sourceArchiveFileName oder destinationDirectoryName angegebene Pfad ist ungültig (er befindet sich z. B. auf einem nicht zugeordneten Laufwerk).

overwriteFiles ist false und destinationDirectoryName enthält bereits eine Datei mit demselben Namen wie eine Datei, die extrahiert wird.

- oder -

Ein E/A-Fehler ist aufgetreten.

- oder -

Der Name von ZipArchiveEntry ist eine leere Zeichenfolge, die nur Leerzeichen oder mindestens ein gemäß der Definition von InvalidPathChars ungültiges Zeichen enthält.

- oder -

Die Extraktion von ZipArchiveEntry würde in einem Dateiziel resultieren, das sich außerhalb des Zielverzeichnisses befindet (z. B. aufgrund von Accessoren übergeordneter Verzeichnisse).

- oder -

A ZipArchiveEntry hat den gleichen Namen wie ein Eintrag aus demselben Archiv, das bereits extrahiert wurde.

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.

sourceArchiveFileName oder destinationDirectoryName weist ein ungültiges Format auf.

sourceArchiveFileName wurde nicht gefunden.

Das in sourceArchiveFileName festgelegte Archiv ist keine gültige ZipArchive-Klasse.

- oder -

ZipArchiveEntry wurde nicht gefunden oder ist fehlerhaft.

- oder -

Eine ZipArchiveEntry-Klasse wurde mit einer nicht unterstützten Komprimierungsmethode komprimiert.

Hinweise

Wenn beim Extrahieren des Archivs ein Fehler auftritt, bleibt das Archiv teilweise extrahiert.

Jeder Eintrag wird so extrahiert, dass die extrahierte Datei den gleichen relativen Pfad zu dem destinationDirectoryName aufweist, wie der Eintrag zum Archiv hat.

Die sourceArchiveFileName Parameter und destinationDirectoryName akzeptieren sowohl relative als auch absolute Pfade. Ein relativer Pfad wird relativ zum aktuellen Arbeitsverzeichnis interpretiert.

Wenn eine zu archivierende Datei eine ungültige Uhrzeit der letzten Änderung aufweist, werden das erste Datum und die erste Uhrzeit verwendet, die im Zip-Zeitstempelformat (Mitternacht am 1. Januar 1980) dargestellt werden können.

Gilt für:

ExtractToDirectory(Stream, String, Boolean)

Quelle:
ZipFile.Extract.cs
Quelle:
ZipFile.Extract.cs

Extrahiert alle Dateien aus dem ZIP-Archiv, das im angegebenen Stream gespeichert ist, und platziert sie im angegebenen Zielverzeichnis im Dateisystem und ermöglicht optional die Auswahl, ob die Dateien im Zielverzeichnis überschrieben werden sollen.

public:
 static void ExtractToDirectory(System::IO::Stream ^ source, System::String ^ destinationDirectoryName, bool overwriteFiles);
public static void ExtractToDirectory (System.IO.Stream source, string destinationDirectoryName, bool overwriteFiles);
static member ExtractToDirectory : System.IO.Stream * string * bool -> unit
Public Shared Sub ExtractToDirectory (source As Stream, destinationDirectoryName As String, overwriteFiles As Boolean)

Parameter

source
Stream

Der Stream, aus dem das ZIP-Archiv extrahiert werden soll.

destinationDirectoryName
String

Der Pfad zum Verzeichnis, in dem die extrahierten Dateien abgelegt werden sollen, angegeben als relativer oder absoluter Pfad. Ein relativer Pfad wird relativ zum aktuellen Arbeitsverzeichnis interpretiert.

overwriteFiles
Boolean

true, wenn Dateien überschrieben werden sollen, andernfalls false.

Ausnahmen

destinationDirectoryName> ist Empty, enthält nur Leerzeichen oder enthält mindestens ein ungültiges Zeichen.

destinationDirectoryName oder source ist null.

Der angegebene Pfad in destinationDirectoryName überschreitet die systemdefinierte maximale Länge.

Der angegebene Pfad ist ungültig (er befindet sich z. B. auf einem nicht zugeordneten Laufwerk).

Der Name eines Eintrags im Archiv ist Empty, enthält nur Leerraum oder enthält mindestens ein ungültiges Zeichen.

- oder -

Das Extrahieren eines Archiveintrags wird eine Datei erstellen, die sich außerhalb des Verzeichnisses befindet, das von destinationDirectoryName angegeben wird. (Zum Beispiel geschähe dies möglicherweise, wenn der Eintragsname Accessoren des übergeordneten Verzeichnisses enthält.)

- oder -

overwriteFiles ist false , und ein zu extrahierener Archiveintrag hat denselben Namen wie ein Eintrag, der bereits extrahiert wurde oder in destinationDirectoryNamevorhanden ist.

Der Aufrufer verfügt nicht über die erforderliche Berechtigung für den Zugriff auf das Archiv oder das Zielverzeichnis.

destinationDirectoryName enthält ein ungültiges Format.

Das im source Stream enthaltene Archiv ist kein gültiges ZIP-Archiv.

- oder -

Ein Archiveintrag wurde nicht gefunden oder ist fehlerhaft.

- oder -

Ein Archiveintrag wurde mit einer Komprimierungsmethode komprimiert, die nicht unterstützt wird.

Hinweise

Diese Methode erstellt das angegebene Verzeichnis und alle Unterverzeichnisse. Das Zielverzeichnis kann nicht bereits vorhanden sein. Ausnahmen im Zusammenhang mit der Überprüfung der Pfade in oder destinationDirectoryName den Dateien im ZIP-Archiv, das in source Parametern enthalten ist, werden vor der Extraktion ausgelöst. Andernfalls bleibt das Archiv teilweise extrahiert, wenn während der Extraktion ein Fehler auftritt. Jede extrahierte Datei weist denselben relativen Pfad zu dem von destinationDirectoryName angegebenen Verzeichnis auf wie der Quelleintrag zum Stammverzeichnis des Archivs. Wenn eine zu archivierende Datei eine ungültige Uhrzeit der letzten Änderung aufweist, werden das erste Datum und die erste Uhrzeit verwendet, die im Zip-Zeitstempelformat (Mitternacht am 1. Januar 1980) dargestellt werden können.

Gilt für:

ExtractToDirectory(String, String)

Quelle:
ZipFile.Extract.cs
Quelle:
ZipFile.Extract.cs
Quelle:
ZipFile.Extract.cs

Extrahiert alle Dateien im angegebenen ZIP-Archiv in ein Verzeichnis im Dateisystem.

public:
 static void ExtractToDirectory(System::String ^ sourceArchiveFileName, System::String ^ destinationDirectoryName);
public static void ExtractToDirectory (string sourceArchiveFileName, string destinationDirectoryName);
static member ExtractToDirectory : string * string -> unit
Public Shared Sub ExtractToDirectory (sourceArchiveFileName As String, destinationDirectoryName As String)

Parameter

sourceArchiveFileName
String

Der Pfad zum Archiv, das extrahiert werden soll.

destinationDirectoryName
String

Der Pfad zum Verzeichnis, in dem die extrahierten Dateien abgelegt werden sollen, angegeben als relativer oder absoluter Pfad. Ein relativer Pfad wird relativ zum aktuellen Arbeitsverzeichnis interpretiert.

Ausnahmen

destinationDirectoryName oder sourceArchiveFileName ist Empty, enthält nur Leerraum oder mindestens ein ungültiges Zeichen.

destinationDirectoryName oder sourceArchiveFileName ist null.

Der in destinationDirectoryName oder sourceArchiveFileName angegebene Pfad überschreitet die im System definierte maximale Länge ().

Der angegebene Pfad ist ungültig (er befindet sich z. B. auf einem nicht zugeordneten Laufwerk).

Der Name eines Eintrags im Archiv ist Empty, enthält nur Leerraum oder enthält mindestens ein ungültiges Zeichen.

- oder -

Das Extrahieren eines Archiveintrags wird eine Datei erstellen, die sich außerhalb des Verzeichnisses befindet, das von destinationDirectoryName angegeben wird. (Zum Beispiel geschähe dies möglicherweise, wenn der Eintragsname Accessoren des übergeordneten Verzeichnisses enthält.)

- oder -

Ein zu extrahierende Archiveintrag hat denselben Namen wie ein Eintrag, der bereits extrahiert wurde oder in destinationDirectoryNamevorhanden ist.

Der Aufrufer verfügt nicht über die erforderliche Berechtigung für den Zugriff auf das Archiv oder das Zielverzeichnis.

destinationDirectoryName oder sourceArchiveFileName enthält ein ungültiges Format.

sourceArchiveFileName wurde nicht gefunden.

Das Archiv, das von sourceArchiveFileName angegeben wurde, ist kein gültiges Zip-Archiv.

- oder -

Ein Archiveintrag wurde nicht gefunden oder ist fehlerhaft.

- oder -

Ein Archiveintrag wurde mit einer Komprimierungsmethode komprimiert, die nicht unterstützt wird.

Beispiele

In diesem Beispiel wird gezeigt, wie Sie mithilfe der ZipFile -Klasse ein ZIP-Archiv erstellen und extrahieren. Es komprimiert den Inhalt eines Ordners in ein ZIP-Archiv und extrahiert diesen Inhalt in einen neuen Ordner. Um die ZipFile-Klasse zu verwenden, müssen Sie auf die System.IO.Compression.FileSystem-Assembly in Ihrem Projekt verweisen.

using System;
using System.IO.Compression;

class Program
{
    static void Main(string[] args)
    {
        string startPath = @".\start";
        string zipPath = @".\result.zip";
        string extractPath = @".\extract";

        ZipFile.CreateFromDirectory(startPath, zipPath);

        ZipFile.ExtractToDirectory(zipPath, extractPath);
    }
}
open System.IO.Compression

let startPath = @".\start"
let zipPath = @".\result.zip"
let extractPath = @".\extract"

ZipFile.CreateFromDirectory(startPath, zipPath)

ZipFile.ExtractToDirectory(zipPath, extractPath)
Imports System.IO.Compression

Module Module1

    Sub Main()
        Dim startPath As String = ".\start"
        Dim zipPath As String = ".\result.zip"
        Dim extractPath As String = ".\extract"

        ZipFile.CreateFromDirectory(startPath, zipPath)

        ZipFile.ExtractToDirectory(zipPath, extractPath)
    End Sub

End Module

Hinweise

Diese Methode erstellt das angegebene Verzeichnis und alle Unterverzeichnisse. Das Zielverzeichnis kann nicht bereits vorhanden sein. Ausnahmen im Zusammenhang mit der Überprüfung der Pfade in den Parametern oder sourceArchiveFileName werden vor der destinationDirectoryName Extraktion ausgelöst. Wenn andernfalls während der Extraktion ein Fehler auftritt, bleibt das Archiv teilweise extrahiert. Jede extrahierte Datei hat denselben relativen Pfad zu dem von destinationDirectoryName angegebenen Verzeichnis, wie der Quelleintrag zum Stammverzeichnis des Archivs hat.

Gilt für:

ExtractToDirectory(Stream, String)

Quelle:
ZipFile.Extract.cs
Quelle:
ZipFile.Extract.cs

Extrahiert alle Dateien aus dem ZIP-Archiv, das im angegebenen Stream gespeichert ist, und platziert sie im angegebenen Zielverzeichnis im Dateisystem.

public:
 static void ExtractToDirectory(System::IO::Stream ^ source, System::String ^ destinationDirectoryName);
public static void ExtractToDirectory (System.IO.Stream source, string destinationDirectoryName);
static member ExtractToDirectory : System.IO.Stream * string -> unit
Public Shared Sub ExtractToDirectory (source As Stream, destinationDirectoryName As String)

Parameter

source
Stream

Der Stream, aus dem das ZIP-Archiv extrahiert werden soll.

destinationDirectoryName
String

Der Pfad zum Verzeichnis, in dem die extrahierten Dateien abgelegt werden sollen, angegeben als relativer oder absoluter Pfad. Ein relativer Pfad wird relativ zum aktuellen Arbeitsverzeichnis interpretiert.

Ausnahmen

destinationDirectoryName> ist Empty, enthält nur Leerzeichen oder enthält mindestens ein ungültiges Zeichen.

destinationDirectoryName oder source ist null.

Der angegebene Pfad in destinationDirectoryName überschreitet die systemdefinierte maximale Länge.

Der angegebene Pfad ist ungültig (er befindet sich z. B. auf einem nicht zugeordneten Laufwerk).

Der Name eines Eintrags im Archiv ist Empty, enthält nur Leerraum oder enthält mindestens ein ungültiges Zeichen.

- oder -

Das Extrahieren eines Archiveintrags wird eine Datei erstellen, die sich außerhalb des Verzeichnisses befindet, das von destinationDirectoryName angegeben wird. (Zum Beispiel geschähe dies möglicherweise, wenn der Eintragsname Accessoren des übergeordneten Verzeichnisses enthält.)

- oder -

Ein zu extrahierende Archiveintrag hat den gleichen Namen wie ein Eintrag, der bereits extrahiert wurde oder in destinationDirectoryNamevorhanden ist.

Der Aufrufer verfügt nicht über die erforderliche Berechtigung für den Zugriff auf das Archiv oder das Zielverzeichnis.

destinationDirectoryName enthält ein ungültiges Format.

Das im source Stream enthaltene Archiv ist kein gültiges ZIP-Archiv.

- oder -

Ein Archiveintrag wurde nicht gefunden oder ist fehlerhaft.

- oder -

Ein Archiveintrag wurde mit einer Komprimierungsmethode komprimiert, die nicht unterstützt wird.

Hinweise

Diese Methode erstellt das angegebene Verzeichnis und alle Unterverzeichnisse. Das Zielverzeichnis kann nicht bereits vorhanden sein. Ausnahmen im Zusammenhang mit der Überprüfung der Pfade in oder destinationDirectoryName den Dateien im ZIP-Archiv, die in source Parametern enthalten sind, werden vor der Extraktion ausgelöst. Wenn andernfalls während der Extraktion ein Fehler auftritt, bleibt das Archiv teilweise extrahiert. Jede extrahierte Datei hat denselben relativen Pfad zu dem von destinationDirectoryName angegebenen Verzeichnis, wie der Quelleintrag zum Stammverzeichnis des Archivs hat. Wenn eine zu archivierende Datei einen ungültigen Zeitpunkt der letzten Änderung aufweist, werden das erste Datum und die erste Uhrzeit verwendet, die im Zip-Zeitstempelformat (Mitternacht am 1. Januar 1980) dargestellt werden können.

Gilt für:

ExtractToDirectory(Stream, String, Encoding)

Quelle:
ZipFile.Extract.cs
Quelle:
ZipFile.Extract.cs

Extrahiert alle Dateien aus dem ZIP-Archiv, das im angegebenen Stream gespeichert ist, platziert sie im angegebenen Zielverzeichnis im Dateisystem und verwendet die angegebene Zeichencodierung für Eintragsnamen.

public:
 static void ExtractToDirectory(System::IO::Stream ^ source, System::String ^ destinationDirectoryName, System::Text::Encoding ^ entryNameEncoding);
public static void ExtractToDirectory (System.IO.Stream source, string destinationDirectoryName, System.Text.Encoding? entryNameEncoding);
static member ExtractToDirectory : System.IO.Stream * string * System.Text.Encoding -> unit
Public Shared Sub ExtractToDirectory (source As Stream, destinationDirectoryName As String, entryNameEncoding As Encoding)

Parameter

source
Stream

Der Stream, aus dem das ZIP-Archiv extrahiert werden soll.

destinationDirectoryName
String

Der Pfad zum Verzeichnis, in dem die extrahierten Dateien abgelegt werden sollen, angegeben als relativer oder absoluter Pfad. Ein relativer Pfad wird relativ zum aktuellen Arbeitsverzeichnis interpretiert.

entryNameEncoding
Encoding

Die Codierung, die beim Lesen oder Schreiben von Eintragsnamen in diesem Archiv verwendet werden soll. Geben Sie einen Wert für diesen Parameter nur an, wenn eine Codierung für die Interoperabilität mit ZIP-Archiv-Tools und -Bibliotheken erforderlich ist, die die UTF-8-Codierung für Eintragsnamen nicht unterstützen.

Ausnahmen

destinationDirectoryName> ist Empty, enthält nur Leerzeichen oder enthält mindestens ein ungültiges Zeichen.

- oder -

entryNameEncoding wird auf eine andere Unicode-Codierung als UTF-8 festgelegt.

destinationDirectoryName oder source ist null.

Der angegebene Pfad in destinationDirectoryName überschreitet die systemdefinierte maximale Länge.

Der angegebene Pfad ist ungültig (er befindet sich z. B. auf einem nicht zugeordneten Laufwerk).

Der Name eines Eintrags im Archiv ist Empty, enthält nur Leerraum oder enthält mindestens ein ungültiges Zeichen.

- oder -

Das Extrahieren eines Archiveintrags wird eine Datei erstellen, die sich außerhalb des Verzeichnisses befindet, das von destinationDirectoryName angegeben wird. (Zum Beispiel geschähe dies möglicherweise, wenn der Eintragsname Accessoren des übergeordneten Verzeichnisses enthält.)

- oder -

Ein zu extrahierende Archiveintrag hat den gleichen Namen wie ein Eintrag, der bereits extrahiert wurde oder in destinationDirectoryNamevorhanden ist.

Der Aufrufer verfügt nicht über die erforderliche Berechtigung für den Zugriff auf das Archiv oder das Zielverzeichnis.

destinationDirectoryName enthält ein ungültiges Format.

Das im source Stream enthaltene Archiv ist kein gültiges ZIP-Archiv.

- oder -

Ein Archiveintrag wurde nicht gefunden oder ist fehlerhaft.

- oder -

Ein Archiveintrag wurde mit einer Komprimierungsmethode komprimiert, die nicht unterstützt wird.

Hinweise

Diese Methode erstellt das angegebene Verzeichnis und alle Unterverzeichnisse. Das Zielverzeichnis kann nicht bereits vorhanden sein. Ausnahmen im Zusammenhang mit der Überprüfung der Pfade in oder destinationDirectoryName den Dateien im ZIP-Archiv, die in source Parametern enthalten sind, werden vor der Extraktion ausgelöst. Wenn andernfalls während der Extraktion ein Fehler auftritt, bleibt das Archiv teilweise extrahiert. Jede extrahierte Datei hat denselben relativen Pfad zu dem von destinationDirectoryName angegebenen Verzeichnis, wie der Quelleintrag zum Stammverzeichnis des Archivs hat. Wenn eine zu archivierende Datei einen ungültigen Zeitpunkt der letzten Änderung aufweist, werden das erste Datum und die erste Uhrzeit verwendet, die im Zip-Zeitstempelformat (Mitternacht am 1. Januar 1980) dargestellt werden können.

Gilt für: