TAR.GZ 아카이브가 C#으로 병합됨

임의의 수의 Tar.gz 아카이브를 단일 아카이브로 결합하려면 이 기사를 읽으십시오.

설명

Aspose.ZIP API는 압축 여부에 관계없이 Tar 아카이브를 추출하고 구성할 수 있는 TarArchive 클래스를 제공합니다. 아카이브를 중간 저장소에 저장하지 않고도 메모리에 추출할 수 있으며 해당 항목을 결합된 Tar 아카이브에 즉시 전달할 수 있습니다.

모든 항목의 콘텐츠를 보관할 수 있을 만큼 충분한 가상 메모리가 있는지 확인하세요.

항목 전송

다음 코드 예제는 여러 Tar.gz 아카이브에서 항목을 추출하여 즉시 tar 아카이브에 넣는 방법을 보여줍니다. SaveGzipped 메서드를 사용하여 메모리에서 gz로 압축합니다.

 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    }

다른 아카이브에 대한 유사한 접근 방식

동일한 접근 방식을 사용하여 tar.lz, tar.xz, tar.z를 결합할 수 있습니다.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.