C#에서 GZip 만들기

GZip 아카이브(.gz)는 GNU zip 압축 알고리즘을 사용하여 하나 이상의 파일을 압축하는 데 사용됩니다. 일반적으로 UNIX 운영 체제에서 파일 압축에 사용됩니다. 이 기사에서는 C#에서 프로그래밍 방식으로 GZip(.gz)를 사용하여 파일을 압축하는 방법을 배웁니다. 또한 이 기사에서는 C#에서 GZip 아카이브의 압축을 푸는 방법도 다룹니다.

GZip을 사용하여 파일을 압축 및 압축 해제하는 C# API

GZip을 사용하여 파일을 압축 및 압축 해제하려면 .NET용 Aspose.ZIP를 사용합니다. ZIP, 7z, GZip 등 널리 사용되는 아카이브 형식으로 작업할 수 있는 강력한 API입니다. API를 다운로드하거나 [NuGet]을 사용하여 설치할 수 있습니다. 8.

PM> Install-Package Aspose.Zip

C#에서 GZip을 사용하여 파일 압축

다음은 C#에서 GZip을 사용하여 파일을 압축하는 단계입니다.

다음 코드 샘플은 C#에서 파일을 GZip으로 압축하는 방법을 보여줍니다.

using (GzipArchive archive = new GzipArchive())
{
    // 소스 설정
    archive.SetSource("data.bin");
    
    // 아카이브 생성
    archive.Save("archive.gz");
}

C#에서 GZip 아카이브 압축 풀기

다음은 .NET용 Aspose.ZIP을 사용하여 C#에서 GZip 아카이브의 압축을 푸는 단계입니다.

  • GzipArchive 클래스의 객체를 생성하고 GZip 아카이브의 경로로 초기화합니다.
  • File.Create(String) 메소드를 사용하여 추출된 내용을 위한 파일을 생성합니다.
  • GZipArchive.Open() 메서드를 사용하여 추출을 위해 GZip을 엽니다.
  • 추출된 내용을 읽고 파일에 씁니다.

다음 코드 샘플은 C#을 사용하여 GZip 아카이브의 압축을 푸는 방법을 보여줍니다.

// GZip 아카이브 로드
using (var archive = new GzipArchive("archive.gz"))
{
    // 파일을 생성
    using (var extracted = File.Create("data.bin"))
    {
        // 오픈 아카이브
        var unpacked = archive.Open();
        byte[] b = new byte[8192];
        int bytesRead;
        
        // 파일에 쓰기
        while (0 < (bytesRead = unpacked.Read(b, 0, b.Length)))
            extracted.Write(b, 0, bytesRead);
    }
}

C#에서 스트림으로 GZip 아카이브 추출

GZip 아카이브를 메모리 스트림 개체로 추출할 수도 있습니다. 다음은 이 작업을 수행하는 단계입니다.

다음 코드 샘플은 C#을 사용하여 GZip 아카이브를 메모리 스트림으로 추출하는 방법을 보여줍니다.

// 메모리 스트림 생성
var ms = new MemoryStream();

// GZip 아카이브 로드
using (GzipArchive archive = new GzipArchive(File.OpenRead("sample.gz")))
{
    // 메모리 스트림에 추출 및 복사
    archive.Open().CopyTo(ms);
    Console.WriteLine(archive.Name);
}

무료 API 라이선스 받기

평가 제한 없이 API를 사용하기 위해 임시 무료 라이선스 받기를 할 수 있습니다.

결론

이 기사에서는 C#에서 GZip을 사용하여 파일을 압축하거나 압축 해제하는 방법을 배웠습니다. 또한 프로그래밍 방식으로 스트리밍하기 위해 GZip을 추출하는 방법을 보았습니다. 문서를 사용하여 .NET용 Aspose.ZIP에 대해 자세히 알아볼 수 있습니다. 또한 포럼을 통해 문의 사항을 공유할 수 있습니다.

또한보십시오