G
Geoffrey Gallaway
Hello,
I'm trying to arbitrarily pull files out of a multi-100-meg zip file.
The zip file has been encrypted so I can't simply give ZipFile()'s
constructor the filename. I need to pass the zip file through a cipher
object which can give me an inputstream but ZipFile doesn't have a
constructor that takes anything but a file/filename. I could use
ZipInputStream but that requires me to spin through getNextEntry
looking for the ZipEntry with the right filename which takes too long
on a large zip file. Zip files have indexes which ZipFile.getEntry()
probably uses to quickly seek to the correct location in the zip file
when ZipFile.getInputStream() is called.
How can I get quick, arbitrary access to a zip file when the underlying
data isn't a file itself but an inputstream?
Thanks,
Geoffeg
I'm trying to arbitrarily pull files out of a multi-100-meg zip file.
The zip file has been encrypted so I can't simply give ZipFile()'s
constructor the filename. I need to pass the zip file through a cipher
object which can give me an inputstream but ZipFile doesn't have a
constructor that takes anything but a file/filename. I could use
ZipInputStream but that requires me to spin through getNextEntry
looking for the ZipEntry with the right filename which takes too long
on a large zip file. Zip files have indexes which ZipFile.getEntry()
probably uses to quickly seek to the correct location in the zip file
when ZipFile.getInputStream() is called.
How can I get quick, arbitrary access to a zip file when the underlying
data isn't a file itself but an inputstream?
Thanks,
Geoffeg