私はRustの相対パスを正規化して解決しようとしていた個人的なプロジェクトに取り組んでいます。しかし、私がそうする度に、新しいパスには、奇妙な\\?\
シーケンスの接頭辞が付けられます。例えば、のような単純なもの:私の正規化されたパスの先頭に\?
let p = fs::canonicalize(".").unwrap();
println!("{}", p.display());
は、次のような出力になります:
\\?\C:\Users\[...]\rustprojects\projectname
私は他の方法でしようよ何を達成することができますので、これは特に問題ではありません。しかし、奇妙な動作のように思えます。特に、パスの文字列形式を何らかの方法で使用して精度を必要とする場合は特にそうです。結果の前に文字列があるのはなぜですか?それを避けるにはどうしたらいいですか?