Below is the folder with my input image (1MB), compressed gzip (1.5MB) and decompressed image.
Arek,
http://forum.codecal...=1&d=1251621635
Here is the code for compression method, and decompression method. I used the standard GZipStream class. MSDN documentationis here. Full solution is also posted.
FileStream source = new FileStream("tapeta.jpg", FileMode.Open);
FileStream destinationG = new FileStream("compressed.gzip", FileMode.Create);
FileStream destinationD = new FileStream("compressed.deflate", FileMode.Create);
GZipStream gzip = new GZipStream(destinationG, CompressionMode.Compress);
DeflateStream deflate = new DeflateStream(destinationD, CompressionMode.Compress);
byte[] buffer = new byte[source.Length];
source.Read(buffer, 0, buffer.Length);
gzip.Write(buffer, 0, buffer.Length);
deflate.Write(buffer, 0, buffer.Length);
source.Close();
destinationG.Close();
destinationD.Close();
//gzip.Close();
//deflate.Close();
MessageBox.Show("File has been compressed. Will open the folder.");
Process.Start(Application.StartupPath);
FileStream original = new FileStream("tapeta.jpg", FileMode.Open);
FileStream sourceG = new FileStream("compressed.gzip", FileMode.Open);
FileStream sourceD = new FileStream("compressed.deflate", FileMode.Open);
FileStream decompG = new FileStream("decompressed gzip.jpg", FileMode.Create);
FileStream decompD = new FileStream("decompressed deflate.jpg", FileMode.Create);
GZipStream gzip = new GZipStream(sourceG, CompressionMode.Decompress);
DeflateStream deflate = new DeflateStream(sourceD, CompressionMode.Decompress);
byte[] buffer = new byte[original.Length];
gzip.Read(buffer, 0, buffer.Length);
decompG.Write(buffer, 0, buffer.Length);
buffer = new byte[original.Length];
deflate.Read(buffer, 0, buffer.Length);
decompD.Write(buffer, 0, buffer.Length);
sourceG.Close();
sourceD.Close();
decompG.Close();
decompD.Close();
original.Close();
MessageBox.Show("Bother were decompressed. Will open the folder.");
Process.Start(Application.StartupPath);


Sign In
Create Account




Back to top









