1.摘要
Rust的命令行和环境变量处理在标准库中提供了一整套实现方法, 在本文中除了探索标准库的使用方法之外, 也在不断适应Rust独有的语法特点。在本文中, 我们通过标准库函数的返回值熟悉了迭代器的使用方法, 操作迭代器精确控制保存的内容, 包括字符串和键值对的使用方法。
2.读取参数值
在Rust编程中要读取命令行参数的值, 标准库提供了一个函数: std::env::args, 该函数返回一个传递给命令行参数的迭代器, 迭代器中保存了所有参数内容, 调用者需要调用collect方法将其转换成一个集合, 先看一段示例代码:
use std::env;
fn main() {
let args: Vec<String> = env::args().collect();
dbg!(args);
}
在上面的代码中, 首先使用use语句将std::env模块引入作用域以便使用它的args函数。然后调用其collect()方法, 该方法将接收命令行所有参数内容并保存到变量args中, 接着使用dbg!宏打印了args的内容。
现在将这段代码编译执行会发现没有任何内容输出, 这是因为执行运行没有参数信息, 现在我们设计一个场景, 通过search参数来搜索一个文件, 完整命令如下:
cargo run -- search filename.txt
注意: 参数符号"--"与参数名之间有空格。
执行结果如下:
从返回的结果来看, 集合中保存了三个参数, 实际上第一