我想.zip使用zip crate读取不同线程中的文件。
extern crate zip;
use zip::ZipArchive;
use zip::read::ZipFile;
use std::fs::File;
use std::io::BufReader;
use std::thread;
fn compute_hashes(mut file: ZipFile) {
let reader_thread= thread::spawn(move || {
let mut reader = BufReader::new(file);
/* ... */
});
}
fn main() {
let mut file = File::open(r"facebook-JakubOnderka.zip").unwrap();
let mut zip = ZipArchive::new(file).unwrap();
for i in 0..zip.len() {
let mut inside = zip.by_index(i).unwrap();
if !inside.name().ends_with("/") { // skip directories
println!("Filename: {}", inside.name());
compute_hashes(inside);
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是编译器向我显示此错误:
extern crate zip;
use …Run Code Online (Sandbox Code Playgroud)