High-level wrapper around the unrar C library provided by rarlab.
Please look inside the examples directory to see how to use this library!
Specifically the lister example is well documented and advanced!
Basic example to list archive entries:
extern crate unrar;
fn main() {
for entry in unrar::Archive::new("archive.rar".into()).list().unwrap() {
println!("{}", entry.unwrap());
}
}
Run this example: cargo run --example basic_list
.
Note that you need to put an archive.rar
in the directory first.
For example, by using the rar
CLI: rar a archive.rar .
- Multipart files
- Listing archives
- Extracting them
- Testing them (not fully tested yet)
- Encrypted archives with password
- Linked statically against the unrar source.
- Build unrar C++ code from source
- Basic functionality that operates on filenames / paths (without reading archives)
- More documentation / RustDoc
- Tests
Feel free to contribute! If you detect a bug or issue, open an issue.
Pull requests are welcome!
If you need help using the library, ping me at irc.mozilla.org, my handle is danyel
While this crate uses the MIT license for the Rust parts, the embedded C++ library has a different license.
For more informations, see its license file.