Rust 程序设计语言 简体中文版 1.85.0=> file, Err(error) => match error.kind() { ErrorKind::NotFound => match File::create("hello.txt") { Ok(fc) => fc, Err(e) => panic!("Problem creating the match。 我们希望在内层 match 中检查的条件是 error.kind() 的返回值是否为 ErrorKind的 NotFound 变体。如果是,则通过 File::create 尝试创建该文件。然而因为 File::create 也可能会失 败,还需要在内层 match 表达式中增加了第二个分支。当文件不能被创建,会打印出一个不同 的错误信息。外层 match 的最后一个分支保持不变,这样对任何除了文件不存在的错误会使程 txt").unwrap_or_else(|error| { if error.kind() == ErrorKind::NotFound { File::create("hello.txt").unwrap_or_else(|error| { panic!("Problem creating the file: {error:0 码力 | 562 页 | 3.23 MB | 24 天前3
共 1 条
- 1













