TAR.GZ 아카이브가 C#으로 병합됨
Contents
[
Hide
Show
]임의의 수의 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를 결합할 수 있습니다.