Code tells all:
<code>using</code> <code>System;</code>
<code>using</code> <code>System.IO;</code>
<code>using</code> <code>ICSharpCode.SharpZipLib.GZip;</code>
<code>using</code> <code>ICSharpCode.SharpZipLib.Core;</code>
<code>namespace</code> <code>CNKIDataExport</code>
<code>{</code>
<code> </code><code>class</code> <code>Program</code>
<code> </code><code>{</code>
<code> </code><code>public</code> <code>static</code> <code>void</code> <code>gZipFile(</code><code>string</code> <code>filePath, </code><code>string</code> <code>zipFilePath)</code>
<code> </code><code>{</code>
<code> </code><code>Stream s = </code><code>new</code> <code>GZipOutputStream(File.Create(zipFilePath));</code>
<code> </code><code>FileStream fs = File.OpenRead(filePath);</code>
<code> </code><code>int</code> <code>size;</code>
<code> </code><code>byte</code><code>[] buf = </code><code>new</code> <code>byte</code><code>[4096];</code>
<code> </code><code>do</code>
<code> </code><code>{</code>
<code> </code><code>size = fs.Read(buf, 0, buf.Length);</code>
<code> </code><code>s.Write(buf, 0, size);</code>
<code> </code><code>} </code><code>while</code> <code>(size > 0);</code>
<code> </code><code>s.Close();</code>
<code> </code><code>fs.Close();</code>
<code> </code><code>}</code>
<code> </code><code>public</code> <code>static</code> <code>void</code> <code>gunZipFile(</code><code>string</code> <code>zipFilePath, </code><code>string</code> <code>filePath)</code>
<code> </code><code>using</code> <code>(Stream inStream = </code><code>new</code> <code>GZipInputStream(File.OpenRead(zipFilePath)))</code>
<code> </code><code>using</code> <code>(FileStream outStream = File.Create(filePath))</code>
<code> </code><code>byte</code><code>[] buf = </code><code>new</code> <code>byte</code><code>[4096];</code>
<code> </code><code>StreamUtils.Copy(inStream, outStream, buf);</code>
<code> </code><code>}</code>
<code> </code><code>static</code> <code>void</code> <code>Main(</code><code>string</code><code>[] args)</code>
<code> </code><code>string</code> <code>src = </code><code>@"D:\test\in.txt"</code>
<code> </code><code>string</code> <code>dest = </code><code>@"D:\test\out.gz"</code>
<code> </code><code>string</code> <code>ori = </code><code>@"D:\test\ori.txt"</code>
<code> </code><code>gZipFile(src, dest);</code>
<code> </code><code>Console.WriteLine(</code><code>"gzip over!"</code><code>);</code>
<code> </code><code>gunZipFile(dest, ori);</code>
<code> </code><code>Console.WriteLine(</code><code>"gunzip over!"</code><code>);</code>
<code> </code><code>Console.ReadKey();</code>
<code> </code><code>}</code>
<code>}</code>
相关链接:
*** walker ***
本文转自walker snapshot博客51CTO博客,原文链接http://blog.51cto.com/walkerqt/1706239如需转载请自行联系原作者
RQSLT