10 unstable releases (3 breaking)

0.4.0 Apr 3, 2024
0.3.1 Mar 4, 2024
0.2.3 Feb 21, 2024
0.2.2 Mar 29, 2023
0.1.2 Jul 4, 2022

#732 in Filesystem

Download history 5/week @ 2024-12-26 62/week @ 2025-01-02 42/week @ 2025-01-09 136/week @ 2025-01-16 39/week @ 2025-01-23 108/week @ 2025-01-30 185/week @ 2025-02-06 250/week @ 2025-02-13 59/week @ 2025-02-20 142/week @ 2025-02-27 44/week @ 2025-03-06 120/week @ 2025-03-13 110/week @ 2025-03-20 163/week @ 2025-03-27 297/week @ 2025-04-03 354/week @ 2025-04-10

931 downloads per month

MIT/Apache

14KB
275 lines

csv-zip-maker-rs

CSV and ZIP maker

Documentation

Features

  • CSV and Zip file make in temp dir.
  • Cleanup files at drop.
  • Use file instead of memory.

Changes

CHANGELOG.md

Examples

use csv_zip_maker::{customize::CsvExcelUtf16Customizer, CsvExcelCustomizer, CsvZipError, CsvZipMaker};

fn main() -> Result<(), CsvZipError> {
    let mut maker = CsvZipMaker::new("test", "summary")?;
    let mut csv_maker = maker.make_csv_maker_for_excel("summary1")?;
    csv_maker.write(&vec!["aaa", "bbb"])?;
    csv_maker.write(&vec!["ccc", "ddd"])?;
    maker.add_csv(&mut csv_maker)?;
    let mut csv_maker = maker.make_csv_maker("summary2")?;
    csv_maker.write(&vec!["111", "222"])?;
    csv_maker.write(&vec!["333", "444"])?;
    maker.add_csv(&mut csv_maker)?;

    // UTF16
    let mut csv_maker = maker.make_csv_maker_with_customizer("summary3", CsvExcelUtf16Customizer)?;
    csv_maker.write(&vec!["予定表~①\n💖ハンカクだ", "予定表~②💖ハンカクだ"])?;
    csv_maker.write(&vec!["予定表~③💖ハンカクだ", "予定表~④💖ハンカクだ"])?;
    
    maker.add_csv_utf16(&mut csv_maker)?;

    let path_buf = maker.make_zip_file()?;
    std::fs::copy(path_buf, "test.zip")?;
    Ok(())
}

Dependencies

~5–14MB
~195K SLoC