Rust中calamine导入未解决问题求助:添加依赖后仍报错
问题
我想用Rust对接Excel文件,编写了以下代码但出现错误:
use calamine::{open_workbook,Render,xlsx}; fn main(){ let xl_book_path="Your Excle Book Path.xlsx"; let met wb: Xlsx<_> = opne_workbook(Xl_book_path).expect("cannot open xl book"); }
报错信息如下:
error[E0432]: unresolved import `calamine` --> Aut.rs:1:5 | 1 | use calamine::{open_workbook,Render,xlsx}; | ^^^^^^^^ maybe a missing crate `calamine`? | = help: consider adding `extern crate calamine` to use the `calamine` crate error: aborting due to 2 previous errors For more information about this error, try `rustc --explain E0432`.
我原本以为是Cargo.toml中缺少calamine依赖,于是添加了以下配置,但错误仍然存在:
[dependencies] calamine = "0.18.0"
解决方案
需要修正以下几个问题:
修复Cargo.toml格式
依赖配置的键值对需单独换行,正确格式为:[dependencies] calamine = "0.18.0"保存后执行
cargo build,让Cargo自动下载并编译依赖。修正代码中的拼写与语法错误
代码存在多处笔误和语法问题:- 无效语法
let met,改为let - 函数名拼写错误
opne_workbook,改为open_workbook - 变量名大小写错误
Xl_book_path,改为符合Rust规范的xl_book_path Render并非calamine的公开导出项,需移除;Xlsx需从xlsx模块正确引用
修正后的代码:
use calamine::{open_workbook, xlsx::Xlsx}; fn main() { let xl_book_path = "Your Excel Book Path.xlsx"; let wb: Xlsx<_> = open_workbook(xl_book_path).expect("cannot open xl book"); }- 无效语法
使用正确的编译命令
不要直接用rustc编译单个文件,在项目根目录执行cargo run,让Cargo处理依赖管理与编译流程。
内容的提问来源于stack exchange,提问作者Scatt
相关产品推荐
相关产品推荐

