.Net은 GZip과 Deflate라는 두 가지 압축 형식을 지원합니다. 사용해 보았는데 압축률이나 속도에는 차이가 없었습니다. 그 중 GZip은 WinRAR로 열 수 있습니다.
사용이 매우 간단합니다. 다음 프로그램은 문자열을 파일로 압축합니다.
(DeflateStream gzip = new DeflateStream(fs, CompressionMode.Compress))
{
byte[] buf = Encoding.UTF8.GetBytes(this.txbSource.Text);
gzip.Write(buf, 0, buf.Length);
gzip.Flush();
}
압축 해제에는 다음 사항만 필요합니다:
gzip = new GZipStream(new MemoryStream(buf), CompressionMode.Decompress);
(StreamReader 리더 = 새로운 StreamReader(gzip)) 사용
{
this.txbTarget.Text = reader.ReadToEnd();
}
파일의 압축을 풀려면 MemoryStream을 FileStream으로 변경하면 됩니다.
물론 다음을 추가해야 합니다. using System.IO.Compression;
http://www.cnblogs.com/fujingqiu/archive/2006/10/29/543347.html