本文簡要介紹rust語言中 std::path::PathBuf.push
的用法。
用法
pub fn push<P: AsRef<Path>>(&mut self, path: P)
用 path
擴展 self
。
如果path
是絕對路徑,它將替換當前路徑。
在 Windows 上:
- 如果
path
有根但沒有前綴(例如\windows
),它將替換除self
的前綴(如果有)之外的所有內容。 - 如果
path
有前綴但沒有根,則替換self
。 - 如果
self
具有逐字前綴(例如\\?\C:\windows
)並且path
不為空,則新路徑將被標準化:所有對.
和..
的引用都將被刪除。
例子
推送相對路徑會擴展現有路徑:
use std::path::PathBuf;
let mut path = PathBuf::from("/tmp");
path.push("file.bk");
assert_eq!(path, PathBuf::from("/tmp/file.bk"));
推送絕對路徑會替換現有路徑:
use std::path::PathBuf;
let mut path = PathBuf::from("/tmp");
path.push("/etc");
assert_eq!(path, PathBuf::from("/etc"));
相關用法
- Rust PathBuf.pop用法及代碼示例
- Rust PathBuf.with_capacity用法及代碼示例
- Rust PathBuf.into_os_string用法及代碼示例
- Rust PathBuf.set_file_name用法及代碼示例
- Rust PathBuf.new用法及代碼示例
- Rust PathBuf.set_extension用法及代碼示例
- Rust PathBuf.as_path用法及代碼示例
- Rust PathBuf用法及代碼示例
- 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大神的英文原創作品 std::path::PathBuf.push。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。