rust 如何访问当前平台的文件路径分隔符?

oyxsuwqo  于 2023-03-18  发布在  其他
关注(0)|答案(1)|浏览(189)

在Rust中是否有任何可用的选项来获取特定于平台的文件分隔符?
可以有不同的平台特定分隔符:

let separator = "\\" // Could be this.
let separator2 = "/" // Could be this.
let separator3 = "//" // Could be this.

我看起来像下面的东西:

let env_independent_seperator = env::separator()

那么它可能的用法可以如下:

let folder = "C\\Folder\\Path";
let env_independent_separator = env::separator() // Looking something like this
let file_name = "File.txt";
let full_path = folder+ env_independent_separator + file_name;

Rust里有File::separator()吗?

r1zk6ea1

r1zk6ea11#

对于此问题,应使用PathbufPath,而不是使用带分隔符的自定义操作。

  • Path.join
  • Pathbuf.push

如果是平台特定的分隔符,则应使用std::path::MAIN_SEPARATOR

**更新:**自Rust 1.68版起,还有std::path::MAIN_SEPARATOR_STR,其分隔符为const &str

相关问题