GZIP 형식을 사용하여 파일을 압축 및 압축 해제하려면 GZipStream 클래스를 사용하십시오.
압축
파일을 압축하려면 FileStream 클래스와 함께 GZipStream 클래스를 사용하십시오. 다음 매개변수를 설정합니다.
압축할 파일 및 출력 압축 파일의 이름입니다.
여기서 outputFile은 출력 파일이고 파일을 FileStream으로 읽어들입니다.
예시
using(var compress = new GZipStream(outputFile, CompressionMode.Compress, false)) { byte[] b = new byte[inFile.Length]; int read = inFile.Read(b, 0, b.Length); while (read > 0) { compress.Write(b, 0, read); read = inFile.Read(b, 0, b.Length); } }
압축 해제
파일 압축을 풀려면 동일한 GZipStream 클래스를 사용하십시오. 다음 매개변수를 설정합니다. 소스 파일 및 출력 파일 이름.
소스 zip 파일에서 GZipStream을 엽니다.
using (var zip = new GZipStream(inStream, CompressionMode.Decompress, true))
압축을 풀려면 루프를 사용하고 스트림에 데이터가 있는 한 읽으십시오. 출력 스트림에 쓰고 파일이 생성됩니다. 파일은 압축 해제된 파일입니다.
예시
using(var zip = new GZipStream(inputStream, CompressionMode.Decompress, true)) { byte[] b = new byte[inputStream.Length]; while (true) { int count = zip.Read(b, 0, b.Length); if (count != 0) outputStream.Write(b, 0, count); if (count != b.Length) break; } }