Archivos ZIP fusionados en C#
Contents
[
Hide
Show
]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 }