Reading files in zip archives?

I’ve been looking around the standard library, and from what I see, there’s support for handling individual compressed streams but not archives containing many compressed files like for example this in Go: zip package - archive/zip - pkg.go.dev . Anybody know if there’s something in std I’m missing or a third party package?

https://github.com/SuperAuguste/zarc may work

Looks just right. I’ll take it for a spin, thanks!

I think I jumped the gun on this one. After looking at the only example provided, I see how to read the directory listing of the contained files, but no clue as to how to actually read those files. It could be that using the data_offset and compressed_size fields you have to read in the whole file, slice that range, and then prepare a reader with that slice to work with std.compress.zlib?

A pull request has been merged that will allow this https://github.com/SuperAuguste/zarc/pull/4

2 Likes

Ok now we’re talkin’! :^). Just a small bug handling the extracted filenames but I already made the PR. Thanks.

1 Like