繁体   English   中英

如何在 Rust 中获取 path.join?

[英]How to get path.join in Rust?

如何在 Rust 中编写 path.join。 我尝试了多个示例,但无法得到它。

const exeDirectory = path.join(__dirname, '..', 'bin', 'openvpn.exe');
const processFile = path.join(__dirname, '..', '1');

我想把这几行JS转换成Rust。

另一种选择是将字符串的迭代器收集到PathBuf

let path: PathBuf = ["..", "bin", "openvpn.exe"].iter().collect();

这相当于创建一个新的PathBuf并为迭代器中的每个字符串调用.push() 要将多个新组件添加到现有PathBuf ,可以使用extend()方法:

let mut path = PathBuf::from(dir_name);
path.extend(&["..", "bin", "openvpn.exe"]);

我可能遗漏了一些东西,但是您是否看过Path::join和从中链接的PathBuf::push

let exe_directory = Path::new(dirname).join("..").join("bin").join("openvpn.exe");
println!("{:?}", exe_directory);


let mut exe_directory = PathBuf::new();
exe_directory.push(dirname);
exe_directory.push("..");
exe_directory.push("bin");
exe_directory.push("openvpn.exe");
println!("{:?}", exe_directory);

游乐场链接

使用具有.join方法的Path

Path::new("..").join("bin").join("openvpn.exe");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM