ZIP 파일 작업을 할 때, 여러 ZIP 아카이브가 부모 ZIP 아카이브 내에 중첩되어 있는 경우가 많습니다. 이러한 중첩 아카이브의 내용을 액세스하려면 먼저 부모 ZIP을 추출한 다음 각 중첩 아카이브를 개별적으로 처리해야 합니다. 이 문서에서는 C# .NET에서 중첩 ZIP 아카이브를 효율적으로 추출하는 방법을 안내합니다.

목차

중첩 ZIP 아카이브 추출을 위한 .NET API 사용하기

중첩 ZIP 아카이브를 추출하기 위해 Aspose.ZIP for .NET 라이브러리를 사용할 것입니다. 이 강력한 API는 .NET 애플리케이션 내에서 아카이빙 작업을 위해 특별히 설계되어 있으며, 다양한 아카이브 형식을 쉽게 생성하고 조작할 수 있게 해줍니다. API의 DLL을 다운로드하거나 다음 명령을 사용하여 NuGet을 통해 직접 설치할 수 있습니다:

PM> Install-Package Aspose.Zip

중첩 ZIP 아카이브 압축 해제 단계별 가이드

시연을 위해 중첩 ZIP 아카이브를 포함한 세 개의 항목이 있는 ZIP 파일을 준비했습니다.

중첩 ZIP 아카이브

중첩 ZIP 아카이브

각 중첩 ZIP 아카이브를 추출하고 그 내용을 별도의 폴더에 저장할 것입니다. .NET에서 중첩 ZIP 파일 처리를 수행하는 단계는 다음과 같습니다:

  1. FileStream 생성: FileStream 객체를 사용하여 부모 ZIP 파일을 로드합니다.
  2. ZIP 파일 로드: Archive 클래스를 사용하여 ZIP 파일을 로드합니다.
  3. 아카이브 항목 반복: Archive.Entries 컬렉션의 각 ArchiveEntry를 반복합니다.
  4. 중첩 ZIP 아카이브 필터링: 컬렉션에서 ZIP 아카이브를 식별하고 각 아카이브에 대해 다음 작업을 수행합니다:
    • MemoryStream 생성: MemoryStream을 인스턴스화하고 ArchiveEntry.Open().CopyTo(Stream) 메서드를 사용하여 아카이브 항목을 복사합니다.
    • 중첩 아카이브 로드: MemoryStream에서 중첩 아카이브를 로드하기 위해 Archive 클래스의 인스턴스를 생성합니다.
    • 디렉터리로 추출: 마지막으로 Archive.ExtractToDirectory(string) 메서드를 사용하여 중첩 아카이브의 내용을 지정된 폴더로 추출합니다.

다음은 C# .NET에서 중첩 ZIP 아카이브를 압축 해제하는 방법을 보여주는 코드 샘플입니다:

다음 스크린샷은 중첩 ZIP 아카이브에서 추출된 내용을 보여줍니다:

C# .NET에서 중첩 ZIP 아카이브 추출하기

압축 해제된 중첩 아카이브

무료 API 라이센스 받기

Aspose.ZIP for .NET에 대한 무료 임시 라이센스를 얻을 수 있으며, 이를 통해 라이브러리를 평가 제한 없이 사용할 수 있습니다.

결론

이 문서에서는 C#에서 중첩 ZIP 파일을 압축 해제하는 가장 좋은 방법을 배웠습니다. 제공된 단계별 가이드와 코드 샘플은 .NET 프레임워크를 사용하여 중첩 ZIP 아카이브를 효율적으로 처리하는 방법을 보여줍니다. 기능을 더 탐색하고 싶다면 Aspose.ZIP 문서를 방문하거나 포럼에 질문해 주세요.

참고 문헌