ArchiveReader
is a library that wraps partial read functions from libarchive.
It provides rustic interface over listing file names and reading given files within archives.
toml
[dependencies]
archive-reader = "0.2"
```rust use archivereader::Archive; use archivereader::error::Result;
fn main() -> Result<()> {
let mut archive = Archive::open("somearchive.zip");
let filenames = archive
.blocksize(1024 * 1024)
.listfilenames()?
.collect::
lending_iter
- Enables LendingIterator
implementation, which avoids heap allocations for read_file_by_block
functions.This section talks about compiling this project
pkg-config --libs --cflags libarchive 'libarchive >= 3.2.0'
shell
cd SOME_DIR
git clone git@github.com:YaxinCheng/archive-reader.git
cd archive-reader
cargo build --release