using System.IO.Compression;
using System.IO;
Zip the File
FileStream sourceFile = File.OpenRead(@"C:\output1.xml");
FileStream destFile = File.Create(@"C:\sample.zip");
GZipStream compStream = new GZipStream(destFile, CompressionMode.Compress);
try
{
int theByte = sourceFile.ReadByte();
while (theByte != -1)
{
compStream.WriteByte((byte)theByte);
theByte = sourceFile.ReadByte();
}
}
finally
{
compStream.Dispose();
}
UnZip the File
string srcFile = @"C:\sample.zip";
string dstFile = @"C:\file_xml1.xml";
FileStream file_stream_in = null;
FileStream file_stream_out = null;
GZipStream zip = null;
const int bufferSize = 4096;
byte[] buffer = new byte[bufferSize];
int count = 0;
try
{
file_stream_in = new FileStream(srcFile, FileMode.Open, FileAccess.Read, FileShare.Read);
file_stream_out = new FileStream(dstFile, FileMode.Create, FileAccess.Write, FileShare.None);
zip = new GZipStream(file_stream_in , CompressionMode.Decompress, true);
while (true)
{
count = zip.Read(buffer, 0, bufferSize);
if (count != 0)
{
file_stream_out.Write(buffer, 0, count);
}
if (count != bufferSize)
{
break;
}
}
}
catch (Exception ex)
{
System.Diagnostics.Debug.Assert(false, ex.ToString());
}
No comments:
Post a Comment