Intellisense Documentation / Ionic.Zip.xml - where is it?

Jan 21, 2010 at 5:00 AM

Truly amazing job done here Dino!

I did a lot of work trying to compile the source code so I could get the documentation available (but I'd also love to just be able to step through certain calls to see how some things work underneath) but ran into big difficulties.  UNTIL THEN, why isn't a xml documentation file available with the main lib?  Ionic.Zip.xml.  Seems clear that all of the documentation has been written (well done if so!), so it seems tremendously important to me that that documentation in intellisense get made available.  So is it available?


Jan 21, 2010 at 5:14 AM

Thanks for the compliments.

The Ionic.Zip.XML file is available in the DevKit download.

You'll find it in the DotNetZip-v1.9/Debug/ directory, in that zip.   


Jan 21, 2010 at 5:50 AM

Thanks Cheeso, but I must (embarrassingly) say I just found it (sheesh!) and came back here to say so.  You would think I was asking a flippant question, but that's not so - I've been giving this library a good crash course for a couple days now, specifically in testing performance.  I'm very impressed too.  I've also been comparing (again for perf) a few functions between Ionic and Xceed and its stacking up very well for Ionic.

I think after my initial download, for some unusual reason, I removed the dll from its Debug folder, and then forgot about that and that became my initial reference, so that the dll was not with A) its documentation xml file, nor B) the pdb!  I can't believe I went through so much work trying to compile, mostly so I could step through the code (since the pdb was not with the dll either)! 

Thanks again Cheeso



I made a sample archive, with 13 folders, each with 777 60 kb files (all same data (an xml text file), this just for diagnostics). So Folder 1: file1, file2 ... file777...

Archive then has over 10,000 files, is 99 MB (with Deflate / Normal); archive uncompressed is 600 some MB (no encryption).  One of my main interests was how fast a file can be retrieved, meaning mostly just the location of it in the archive, but then the extraction as well (within a big archive like this).  On my pretty fast dual processor, 4 gig ram, after JIT, a file (again: 60kb) in the middle of the archive is being found and decompressed in about 1.3 milliseconds.  Not bad.  Xceed was maybe a couple ticks slower in my tests (although for practical purposes identical).  I don't mean any offense, really, but trying to just work in memory with Xceed is just a lot harder.

Jan 21, 2010 at 6:18 AM

Copernicus, glad you're enjoying the library.

Listen, if you are compressing large files, larger than say, 512k, definitely check out the ParallelDeflateThreshold option on the ZipFile class.  It lets you use  multiple processor for the compression.  The inflation/decompression is still done with a single thread, so no savings there.  But on compression, the parallel deflate can be nearly 2x as fast as the single-threaded approach.  On a multi-cpu, multi-core server-class machine, you will be able to get even more speed increases.  No code change.