Accessing .xml files through rubyzip


Can anyone please suggest an approach for handling a .zip archive which
contains .xls files ? I want to process the .xls files in turn on the
fly as win32OLE objects to extract cell data and create new charts. Of
course I can do it the long way and just unzip everything first, but I
wonder if there is a neat way of marrying the ZIP and win32OLE objects
so that I can process a directory of zipped and unzipped files “in-line”
so the code doesn’t have to break stride to uncompress things. Any ideas
greatly appreciated.


Graham Stokes

My questions would be:

  1. Assuming you have the .xls file in-memory, how do you load it
    into the win32OLE object and what format does the data have to be
    In other words: do you need a VARIANT or a byte array/“string”?

  2. Forgetting about the zip issue for a moment: is it even possible to
    a .xls into an Excel win32OLE object from memory or must it first be
    to a file?

I don’t have these answers, but answering these questions is what you
need to do…


Graham Stokes wrote:


Graham Stokes

Posted via

Check the Ruby standard libraries. I know this is possible in Python -
reading a zip file on the fly and processing its contents. Saw a recipe
for it in the Python Cookbook. Something similar is likely to be there
in Ruby’s libs. Try checking the Ruby Cookbook too - both the official
one from O’Reilly, and Ryan D.’ (incomplete) one at


Vasudev Ram
Software consulting and training
Dancing Bison Enterprises

“Now creating PDFs from Python is even easier”