如何在Rust中跨平台获取可执行扩展?

时间:2016-12-01 18:23:26

标签: windows path rust filenames

我正在编写可移植的Rust代码以在某些目录中查找程序。在Windows上,我希望它foo.exe和其他地方只有foo

显然我可以使用if cfg!(windows),但这看起来很难看。

有没有更好的方法来查找平台的可执行文件扩展名?

1 个答案:

答案 0 :(得分:3)

是的,std::env::consts::EXE_SUFFIX在Windows上为.exestd::env::consts::EXE_EXTENSIONexe。两者在Unix上都是空的。

这些可以与基本名称结合使用,例如std::path::PathBuf::set_extension