Archivos ZIP fusionados en C#

Si desea combinar números arbitrarios de archivos ZIP en un solo archivo, lea este artículo.

Descripción

La API Aspose.ZIP proporciona la clase  Archivo para extraer y componer archivos ZIP. Podemos extraer una entrada a la memoria sin guardarla en un almacenamiento intermedio y pasarla al archivo ZIP de inmediato.

Asegúrese de tener suficiente memoria virtual para guardar el contenido de todas las entradas.

Transferir una entrada

El siguiente ejemplo de código demuestra cómo extraer entradas de varios archivos ZIP y colocarlas inmediatamente en un archivo ZIP.

 1    string[] archivesPaths = new string[] { "data/first.zip", "data/second.zip" };
 2    Archive[] archives = new Archive[archivesPaths.Length];
 3    using (var merged = new Archive())
 4    {
 5        for (int i = 0; i < archivesPaths.Length; i++)
 6        {
 7            Archive a = new Archive(archivesPaths[i]);
 8            archives[i] = a;
 9            foreach (ArchiveEntry entry in a.Entries)
10                merged.CreateEntry(entry.Name, entry.Open());
11        }
12
13        merged.Save("merged.zip");
14
15        for (int i = 0; i < archivesPaths.Length; i++)
16        {
17            archives[i].Dispose();
18        }
19    }

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.