本文簡要介紹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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。