Rust如何实现Excel文件的读写
在Rust中如何高效地读写Excel文件?目前有哪些成熟的库可以使用,比如calamine或xlsx?这些库是否支持.xls和.xlsx格式?读写过程中如何处理大数据量的性能问题?另外,如何实现单元格格式、公式等高级功能的操作?希望有具体的代码示例和使用注意事项。
2 回复
Rust中可以使用以下库实现Excel文件读写:
读取Excel文件:
calamine- 最常用的Excel读取库
use calamine::{open_workbook, Xlsx, Reader};
let mut workbook: Xlsx<_> = open_workbook("file.xlsx")?;
if let Some(Ok(range)) = workbook.worksheet_range("Sheet1") {
for row in range.rows() {
for cell in row {
println!("{}", cell);
}
}
}
写入Excel文件:
rust_xlsxwriter- 功能丰富的写入库
use rust_xlsxwriter::{Workbook, XlsxError};
let mut workbook = Workbook::new();
let worksheet = workbook.add_worksheet();
worksheet.write_string(0, 0, "Hello")?;
worksheet.write_number(0, 1, 123)?;
workbook.save("output.xlsx")?;
其他选择:
xlsx- 另一个读写库polars- 数据处理库,支持Excel I/O
安装依赖: 在Cargo.toml中添加:
[dependencies]
calamine = "0.22"
rust_xlsxwriter = "0.36"
这些库支持.xlsx格式,calamine还支持.xls格式。注意处理可能的错误和数据类型转换。


