Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Metodo ZipFile.ExtractToDirectory (String, String)

.NET Framework (current version)
 

Data di pubblicazione: ottobre 2016

Estrae tutti i file nell'archivio ZIP specificato in una directory del file system.

Spazio dei nomi:   System.IO.Compression
Assembly:  System.IO.Compression.FileSystem (in System.IO.Compression.FileSystem.dll)

public static void ExtractToDirectory(
	string sourceArchiveFileName,
	string destinationDirectoryName
)

Parametri

sourceArchiveFileName
Type: System.String

Percorso dell'archivio da estrarre.

destinationDirectoryName
Type: System.String

Percorso della directory in cui inserire i file estratti, specificato come percorso relativo o assoluto. Un percorso relativo è interpretato rispetto alla directory di lavoro corrente.

Exception Condition
ArgumentException

destinationDirectoryName o sourceArchiveFileName è Empty, contiene solo spazi vuoti o contiene almeno un carattere non valido.

ArgumentNullException

destinationDirectoryName o sourceArchiveFileName è null.

PathTooLongException

Il percorso specificato in destinationDirectoryName o sourceArchiveFileName supera la lunghezza massima definita dal sistema. Ad esempio, nelle piattaforme basate su Windows i percorsi non devono superare 248 caratteri e i nomi file non possono essere composti da più di 260 caratteri.

DirectoryNotFoundException

Il percorso specificato non è valido, ad esempio si trova in un'unità non mappata.

IOException

La directory specificata da destinationDirectoryName esiste già.

-oppure-

Il nome di una voce nell'archivio è Empty, contiene solo spazi vuoti oppure contiene almeno un carattere non valido.

-oppure-

Estrazione di una voce dell'archivio potrebbe creare un file che è all'esterno della directory specificata da destinationDirectoryName. Ad esempio, si potrebbe verificare se il nome dell'elemento contiene funzioni di accesso della directory padre.

-oppure-

Una voce dell'archivio da estrarre ha lo stesso nome di una voce che è già stato estratto dall'archivio stesso.

UnauthorizedAccessException

Il chiamante non dispone delle autorizzazioni necessarie per accedere a directory di destinazione o l'archivio.

NotSupportedException

destinationDirectoryName o sourceArchiveFileName contiene un formato non valido.

FileNotFoundException

L'oggetto sourceArchiveFileName non è stato trovato.

InvalidDataException

L'archivio specificato da sourceArchiveFileName non è un archivio zip valido.

-oppure-

Una voce dell'archivio non è stata trovata o è danneggiata.

-oppure-

Una voce dell'archivio è stata compressa con un metodo di compressione non supportato.

Questo metodo crea la directory specificata e tutte le sottodirectory. La directory di destinazione non esiste già. Le eccezioni relative alla convalida dei percorsi nella destinationDirectoryName o sourceArchiveFileName i parametri vengono generati prima dell'estrazione. In caso contrario, se si verifica un errore durante l'estrazione, l'archivio rimane parzialmente estratto. Ogni file estratto ha lo stesso percorso relativo alla directory specificata da destinationDirectoryName come origine voce sono presenti nella radice dell'archivio.

In questo esempio viene illustrato come creare e utilizzare per estrarre un archivio zip la ZipFile classe. Comprime il contenuto di una cartella in un archivio zip ed estrae il contenuto in una nuova cartella. Utilizzare il ZipFile (classe), è necessario fare riferimento il System.IO.Compression.FileSystem assembly nel progetto.

using System;
using System.IO;
using System.IO.Compression;

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

            ZipFile.CreateFromDirectory(startPath, zipPath);

            ZipFile.ExtractToDirectory(zipPath, extractPath);
        }
    }
}

Universal Windows Platform
Disponibile da 10
.NET Framework
Disponibile da 4.5
Torna all'inizio
Mostra: