
Quando si lavora con i file ZIP, potrebbe capitare di trovare più archivi ZIP annidati all’interno di un archivio ZIP principale. Per accedere ai contenuti di questi archivi annidati, è necessario prima estrarre l’archivio ZIP principale e poi gestire ciascun archivio annidato individualmente. In questo articolo, ti guideremo attraverso come estrarre archivi ZIP annidati in C# .NET in modo efficiente, senza scrivere codice complicato.
Indice
- Utilizzare l’API .NET per l’estrazione di archivi ZIP annidati
- Guida passo-passo per l’estrazione di archivi ZIP annidati
Utilizzare l’API .NET per l’estrazione di archivi ZIP annidati
Per eseguire l’estrazione di archivi ZIP annidati, utilizzeremo la libreria Aspose.ZIP per .NET. Questa potente API è specificamente progettata per operazioni di archiviazione all’interno di applicazioni .NET, consentendoti di creare e manipolare vari formati di archivio con facilità. Puoi scegliere di scaricare il DLL dell’API o installarlo direttamente utilizzando NuGet con il seguente comando:
PM> Install-Package Aspose.Zip
Guida passo-passo per l’estrazione di archivi ZIP annidati
Per la nostra dimostrazione, abbiamo preparato un file ZIP contenente tre voci, inclusi archivi ZIP annidati.

Archivi ZIP annidati
Estraeremo ciascun archivio ZIP annidato e salveremo i suoi contenuti in cartelle separate. Ecco i passaggi per eseguire l’elaborazione dei file ZIP annidati in .NET:
- Creare un FileStream: Carica il file ZIP principale utilizzando un oggetto FileStream.
- Caricare il file ZIP: Utilizza la classe Archive per caricare il file ZIP.
- Iterare tra le voci dell’archivio: Esegui un ciclo attraverso ciascun ArchiveEntry nella collezione Archive.Entries.
- Filtrare gli archivi ZIP annidati: Identifica gli archivi ZIP nella collezione e per ciascuno di questi archivi, esegui quanto segue:
- Creare un MemoryStream: Instanzia un MemoryStream e copia l’entry dell’archivio al suo interno utilizzando il metodo ArchiveEntry.Open().CopyTo(Stream).
- Caricare l’archivio annidato: Crea un’istanza della classe Archive per caricare l’archivio annidato dal MemoryStream.
- Estrarre nella directory: Infine, estrai i contenuti dell’archivio annidato in una cartella specificata utilizzando il metodo Archive.ExtractToDirectory(string).
Ecco un esempio di codice che dimostra come estrarre archivi ZIP annidati in C# .NET:
Lo screenshot seguente illustra i contenuti estratti dagli archivi ZIP annidati:

Archivi annidati estratti
Ottieni una licenza API gratuita
Puoi ottenere una licenza temporanea gratuita per Aspose.ZIP per .NET, che ti consente di utilizzare la libreria senza alcuna limitazione di valutazione.
Conclusione
In questo articolo, hai appreso il modo migliore per estrarre file ZIP annidati in C#. La guida passo-passo e l’esempio di codice forniti illustrano come gestire in modo efficiente gli archivi ZIP annidati utilizzando il framework .NET. Per ulteriori esplorazioni delle funzionalità, sentiti libero di visitare la documentazione di Aspose.ZIP o di porre domande nel nostro forum.