Shalvin Interests

Wednesday, January 19, 2011

Compression in .Net

using System.IO;
using System.IO.Compression;

static void Main(string[] args)
{
CompressFile(@"d:\ShalvinSmall.jpg", @"d:\S.jpg.zip");
DecompressFile(@"d:\s.jpg.zip", @"d:\Aju.jpg");
System.Console.ReadLine();
}

static void CompressFile(string inFilename,
                     string outFilename)
{

FileStream sourceFile = File.OpenRead(inFilename);
FileStream destFile = File.Create(outFilename);

// Create the Compressed stream
GZipStream compStream =
new GZipStream(destFile, CompressionMode.Compress);

// Write the data
int theByte = sourceFile.ReadByte();
while (theByte != -1)
{
compStream.WriteByte((byte)theByte);
theByte = sourceFile.ReadByte();
}

// Clean it up
sourceFile.Close();
compStream.Close();
destFile.Close();
}

static void DecompressFile(string inFilename, string outFilename)
{
FileStream sourceFile = File.OpenRead(inFilename);
FileStream destFile = File.Create(outFilename);

// Create the Compressed stream
GZipStream compStream =
new GZipStream(sourceFile, CompressionMode.Decompress);

// Write the data
int theByte = compStream.ReadByte();
while (theByte != -1)
{
destFile.WriteByte((byte)theByte);
theByte = compStream.ReadByte();
}

// Clean it up
sourceFile.Close();
compStream.Close();
destFile.Close();
}

No comments:

Post a Comment