18 个版本

0.1.17 2021 年 7 月 3 日
0.1.16 2021 年 7 月 3 日
0.1.15 2021 年 6 月 16 日
0.1.1 2021 年 5 月 1 日

2670解析实现

MIT 许可证

105KB
2.5K SLoC

CSVX

Crates.io Crates.io docs.rs

CSVX 是 CSV 格式的扩展。这个扩展允许您将 CSV 作为电子表格使用。

示例

extern crate csvx;

use csvx::Table;
use std::error::Error;

fn main() -> Result<(), Box<dyn Error>> {
    let raw_csv = "pi,3^5,\"ref(0,0)\",-(1/0)
12%5,\"pow(3,5)\",0/NaN,\"\"\"Apollo\"\"\"
A1+A2,\"if(true , sqrt(25),round(if(false,1.1,2.5)))\",D2+1969,";
    println!("RAW CSV DATA:\n{}\n", raw_csv);

    let mut table = Table::new(raw_csv)?;
    println!("CALCULATED TABLE:\n{}", table);

    table.update(0, 0, "true")?;
    println!("UPDATED TABLE:\n{}", table.export_calculated_table()?);

    table.insert_y(0);
    println!("RAW TABLE:\n{}", table.export_raw_table()?);

    Ok(())
}

lib.rs:

CSVX - API 文档 -

CSVX 是 CSV 格式的扩展。这个扩展允许您将 CSV 作为电子表格使用。

更多文档可以在 GitHub 上的仓库中找到。

https://github.com/yujixr/csvx

示例

extern crate csvx;

use csvx::Table;
use std::error::Error;

fn main() -> Result<(), Box<dyn Error>> {
    let raw_csv = "pi,3^5,\"ref(0,0)\",-(1/0)
12%5,\"pow(3,5)\",0/NaN,\"\"\"Apollo\"\"\"
A1+A2,\"if(true , sqrt(25),round(if(false,1.1,2.5)))\",D2+1969,";
    println!("RAW CSV DATA:\n{}\n", raw_csv);

    let mut table = Table::new(raw_csv)?;
    println!("CALCULATED TABLE:\n{}", table);

    table.update(0, 0, "true")?;
    println!("UPDATED TABLE:\n{}", table.export_calculated_table()?);

    table.insert_y(0);
    println!("RAW TABLE:\n{}", table.export_raw_table()?);

    Ok(())
}

依赖项

~1.5–2.3MB
~35K SLoC