本文简要介绍rust语言中 Struct std::path::PathBuf
的用法。
用法
pub struct PathBuf { /* fields omitted */ }
拥有的、可变的路径(类似于 String
)。
这种类型提供了像 push
和 set_extension
这样的方法来改变路径。它还实现了 Deref
到 Path
,这意味着 Path
切片上的所有方法也可用于 PathBuf
值。
有关整体方法的更多详细信息可以在 module documentation 中找到。
例子
您可以使用 push
从组件构建 PathBuf
:
use std::path::PathBuf;
let mut path = PathBuf::new();
path.push(r"C:\");
path.push("windows");
path.push("system32");
path.set_extension("dll");
但是, push
最适合用于动态情况。当您提前了解所有组件时,这是一种更好的方法:
use std::path::PathBuf;
let path: PathBuf = [r"C:\", "windows", "system32.dll"].iter().collect();
我们仍然可以做得比这更好!由于这些都是字符串,我们可以使用 From::from
:
use std::path::PathBuf;
let path = PathBuf::from(r"C:\windows\system32.dll");
哪种方法效果最好取决于您所处的情况。
相关用法
- Rust PathBuf.with_capacity用法及代码示例
- Rust PathBuf.into_os_string用法及代码示例
- Rust PathBuf.pop用法及代码示例
- Rust PathBuf.set_file_name用法及代码示例
- Rust PathBuf.push用法及代码示例
- Rust PathBuf.new用法及代码示例
- Rust PathBuf.set_extension用法及代码示例
- Rust PathBuf.as_path用法及代码示例
- Rust Path.components用法及代码示例
- Rust Path.is_symlink用法及代码示例
- Rust Path.canonicalize用法及代码示例
- Rust Path.is_relative用法及代码示例
- Rust Path.file_stem用法及代码示例
- Rust Path.to_string_lossy用法及代码示例
- Rust Path.display用法及代码示例
- Rust Path.ancestors用法及代码示例
- Rust Path用法及代码示例
- Rust Path.is_dir用法及代码示例
- Rust Path.strip_prefix用法及代码示例
- Rust Path.file_prefix用法及代码示例
- Rust Path.exists用法及代码示例
- Rust Path.read_link用法及代码示例
- Rust Path.parent用法及代码示例
- Rust Path.is_absolute用法及代码示例
- Rust Path.new用法及代码示例
注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 Struct std::path::PathBuf。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。