前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >25.Rust-I/O操作

25.Rust-I/O操作

原创
作者头像
面向加薪学习
修改2022-09-04 11:40:24
5130
修改2022-09-04 11:40:24
举报
文章被收录于专栏:面向加薪学习

I/O 就是输入(Input)/输出(Output)。Rust 语言 IO 输入输出的三大块内容:读取数据、写入数据、命令行参数。

读取和写入

Rust 标准库 IO 输入输出以下 2 个 Trait

特质

说明

Read

用于从输入流读取字节数据

Write

用于向输出流中写入数据,包含字节数据和 UTF-8 数据两种格式

代码语言:txt
复制
fn main() {
    let mut in_word = String::new();
    let result = std::io::stdin().read_line(&mut in_word).unwrap();
    println!("您的输入是: {}", in_word);
    println!("读取的字节数为: {}", result);
}

std::io::stdin() 返回标准输入流 stdin 的句柄。read_line() 是标准入流 stdin 的句柄上的一个方法,从标准输入流读取一行的数据。返回值是一个 Result 枚举,而 unwrap() 则是一个帮助方法,用于简化可恢复错误的处理。它会返回 Result 中存储的实际值。read_line() 方法会自动删除行尾的换行符 \n

代码语言:txt
复制
    let result1 = std::io::stdout().write("面向加薪学习 ".as_bytes()).unwrap();
    println!("写入的字节数为: {}\n", result1);
    let result2 = std::io::stdout().write("www.go-edu.cn ".as_bytes()).unwrap();
    println!("写入的字节数为: {}\n", result2);

std::io::stdout() 会返回标准输出流 stdout 的句柄。 write() 是标准输出流 stdout 的句柄上的一个方法,用于向标准输出流写入字节流内容。 write() 方法的返回值值一个 Result 枚举,而 unwrap() 则是一个帮助方法,用于简化可恢复错误的处理。它会返回 Result 中存储的实际值。 write() 方法并不会输出结束时自动追加换行符 \n。如果需要换行符则需要手动添加

命令行参数

Rust 语言使用 std::env::args() 函数返回所有的命令行参数,返回的结果包含了程序名。

如果要传递多个参数,多个参数之间必须使用 空格( ' ' 分隔。如果参数里有空格,则参数必须使用 双引号(**"**)包起来

代码语言:txt
复制
let input_args = std::env::args();
for arg in input_args{
   println!("命令行参数:[{}]",arg);
}
//cargo build 生成二进制文件
//进入target/debug目录
// ./io25 Go语言极简一本通 Go语言微服务架构核心22讲 从0到Go语言微服务架构师
// 命令行参数:[./io25]
// 命令行参数:[Go语言极简一本通]
// 命令行参数:[Go语言微服务架构核心22讲]
// 命令行参数:[从0到Go语言微服务架构师]

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 读取和写入
  • 命令行参数
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档