Compress & Decompress with IONIC

Assalamualaykum Wr Br…Today we explore Ionic files. That’s the mainstream library, the full library, and it includes all the capability. If you have particular requirements, like you want a smaller library, or you want to exclude the Self-Extracting stuff, or you only want the ZLIB capability, then you may want to choose a
different assembly.Here’s a summary of the options.

Usage scenario Reference this DLL
————————————————————————————————————–
Reading or writing Zip files Ionic.Zip.dll

Raw block or stream compression, ZLIB, GZIP, or DEFLATE Ionic.Zlib.dll

Raw block or stream compression, BZIP2 Ionic.BZip2.dll

Both raw compression as well as reading or writing Zip files Ionic.Zip.dll

Reading or writing Zip files on Compact Framework Ionic.Zip.CF.dll

Raw compression on Compact Framework Ionic.Zlib.CF.dll/Ionic.BZip2.CF.dll

Both raw compression as well as reading or writing Zip files on CF Ionic.Zip.CF.dll

Reading or writing Zip files, using desktop .NET framework but Ionic.Zip.Reduced.dll
never creating a self-extracting archive
————————————————————————————————————-

Never reference both Ionic.Zlib.dll and Ionic.Zip.dll, or both Ionic.BZip2.dll and Ionic.Zip.dll in the same application. If your application does both Zlib and Zip stuff, you need only add a reference to Ionic.Zip.dll. It includes all the capability in Ionic.Zlib.dll and Ionic.BZip2.dll You always need to reference only a single Ionic DLL, regardless whether you use Zlib or BZip2 or Zip or some combination.

The classes in the ZIP library reside in these namespaces:

Namespace Interesting classes
—————————————————————————————-
Ionic.Zip ZipFile, ZipEntry, ZipOutputStream, and
ZipInputStream.

Ionic.Zlib DeflateStream, GZipStream, ZlibStream

Ionic.BZip2 BZip2InputStream, BZip2OutputStream

Ionic.Crc CRC32
—————————————————————————————-

If you want only ZLIB (raw compression and decompression, RFC 1950, 1951, and 1952), the ZLIB classes are packaged independently, in Ionic.Zlib.dll. Likewise, if you want to do BZIP2 compression, outside the scope of a zip file, you can use the Ionic.BZip2.dll assembly.

If you want ZIP, or both ZIP and ZLIB, then your application should depend soly on Ionic.Zip.dll; this assembly includes a superset of the classes in Ionic.Zlib.dll and Ionic.BZip2.dll.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s