Archivos TAR.GZ fusion�ndose en C#
Si desea combinar n�meros arbitrarios de archivos Tar.gz en un solo archivo, lea este art�culo.
Descripci�n
La API Aspose.ZIP proporciona la clase� TarArchive�para extraer y componer archivos Tar, con o sin compresi�n.�Podemos extraer un archivo a la memoria sin guardarlo en un almacenamiento intermedio y pasar sus entradas al archivo Tar combinado 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 Tar.gz e inmediatamente colocarlas en un archivo tar. Lo comprimimos a gz en la memoria usando el m�todo SaveGzipped.
1 string[] archivesPaths = new string[] { "data/first.tar.gz",
2 "data/second.tar.gz", "data/third.tar.gz" };
3 TarArchive[] archives = new TarArchive[archivesPaths.Length];
4
5 using (TarArchive mergred = new TarArchive())
6 {
7 for (int i = 0; i < archivesPaths.Length; i++)
8 {
9 TarArchive a = TarArchive.FromGZip(archivesPaths[i]);
10 archives[i] = a;
11 foreach (TarEntry entry in a.Entries)
12 mergred.CreateEntry(entry.Name, entry.Open());
13 }
14
15 mergred.SaveGzipped("merged.tar.gz");
16
17 for (int i = 0; i < archivesPaths.Length; i++)
18 {
19 archives[i].Dispose();
20 }
21 }Enfoque similar para otros archivos
Puede utilizar el mismo enfoque para combinar tar.lz, tar.xz, tar.z.