Expand description

A module which supports writing ZIP files.

Example

Whole data (u8 slice)

let mut file = File::create("foo.zip").await?;
let mut writer = ZipFileWriter::new(&mut file);

let data = b"This is an example file.";
let opts = EntryOptions::new(String::from("foo.txt"), Compression::Deflate);

writer.write_entry_whole(opts, data).await?;
writer.close().await?;

Stream data (unknown size & data)

let mut file = File::create("foo.zip").await?;
let mut writer = ZipFileWriter::new(&mut file);

let data = b"This is an example file.";
let opts = EntryOptions::new(String::from("bar.txt"), Compression::Deflate);

let mut entry_writer = writer.write_entry_stream(opts).await?;
entry_writer.write_all(data).await.unwrap();

entry_writer.close().await?;
writer.close().await?;

Structs

A set of options for opening new ZIP entries.

An entry writer which supports the streaming of data (ie. the writing of unknown size or data at runtime).

A ZIP file writer which acts over AsyncWrite implementers.