(如果标题错误,请纠正我)
如何 stdin在 *nix 上处理 Rust 中的所有字符串?
例子:
~$ cat file | rust_cmd # и что то делаем дальше
~$ rust_cmd < file
~$ xargs -I% rust_cmd % < file
文档中的代码仅生成第一行
use std::io;
fn main() -> io::Result<()> {
let mut input = String::new();
io::stdin().read_line(&mut input)?;
println!("You typed: {}", input.trim());
Ok(())
}
当我自己开始朝这个方向阅读时,请指出文档中描述这一点的部分。
这里
line会有一个类型Result<String, io::Error>,因此要将内容实际用作字符串,需要通过 unwrap/expect/match/?/etc 将其“拉出”。关键方法的文档:
我将为那些来这里寻求关于 Rust 中的标准输入的人添加一个带有宏的选项
链接