I'm looking for a good tutorial on zlib. I'm interested only in decompressing the archives. I also want to know how I can access a desired file inside an archive, preferably by filename alone, if that can be done in zlib at all.
Well there are many zlib articles , tips and tutorials. Some of them are
1) Bobobobo's Blog
Website: http://bobobobo.wordpress.com/2008/02/23/how-to-use-zlib/
This article basically tells you how to use zlib, and there is a snippet of code that will get you going. This project shows you how to use zlib. Its a console project, because there's no need to create a window to demonstrate use of zlib.
2) zlib: Add Industrial Strength Compression to Your C/C++ Apps
Website: http://www.codeguru.com/cpp/cpp/algorithms/compression/article.php/c11735
For simplicity's sake, this tutorial covers only the basic C-style interface. All the concepts inherent there will be relevant to most other bindings. Since its in C language, it will be most beneficial to your requirements.
Last, you can use this too available in zlib ... Zlib contains them. Have a look in the manual under "Utility Functions".
ZEXTERN int ZEXPORT uncompress OF((Bytef *dest, uLongf *destLen,
const Bytef *source, uLong sourceLen));