Как получить доступ к разделителю пути к файлу для текущей платформы?
Есть ли доступная опция для получения файлового разделителя для платформы в 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;
Есть ли File::separator()
в ржавчине?
1 ответ
Решение
Вместо использования пользовательских операций с разделителем следует использовать Pathbuf
или же Path
для этой проблемы.
Path.join
Pathbuf.push
В случае специфического для платформы разделителя следует использовать std:: path:: MAIN_SEPARATOR.