Extract Zip file from SD Card

Hi everyone, I am attempting to extract a zip file stored on an SD Card. I'm using the Ethernet shield and the SD library currently and can read bytes from the SD Card without a problem, but I'm interested in fully extracting a zip archive (without writing my own extractor if possible).

There are a few c++ libraries which might work with enough tweaking (libzip) but this is another undertaking I would rather avoid.

Does anyone know of an Arduino Library which can be used to extract zip files on an SD Card? Or if I need to work on rolling my own does anyone have any suggestions for where to start?

Thanks everyone :smiley:

Compression schemes tend to be RAM-intensive and difficult to do on a microcontroller like the arduino.

That makes sense. I guess hopes of finding an existing library are going to be pretty slim. I wonder if it would be possible to stream the data piece by piece instead of extracting the whole thing at once.

You can't stream the data and extract it, because important information is stored at the end of the file. Furthermore there can be several files in a .zip file, and there are several different possibilities for how the data are compressed. You can read more about zip files here: ZIP (file format) - Wikipedia