私は&Path
を持っており、最初のコロンで最後のコンポーネントファイル名を2つに分割する必要があります。特定の文字に&Pathの最終コンポーネントを分割するにはどうすればよいですか?
最終的なコンポーネントは&OsStr
(path.file_name()
)ですが、実際には何かをしています。 (!保証されません):documentationは私にいくつかのオプションが与え
to_str()
またはto_string_lossy()
、失敗したり、それがUTF-8ではない場合は、破損した文字列を返すのいずれかto_bytes()
またはto_cstring()
を、彼らは」 Rust 1.6以降で廃止予定とマークされています。- 右下にはと
as_bytes()
メソッドがあります。OsStrExt
はstd::os::unix::ffi::OsStrExt
であり、これは「OsStr
に対するUnix固有の拡張」と記載されている。しかし、std::os::unixは明らかに "Unixプラットフォーム用のstdへの実験的な拡張"です。
もっと標準的なものはありませんでしたか?
このアプリケーションではUnixに限ってうれしいので、OsStrExt::as_bytes
は今のところ最良の選択肢のようです。それは実際にはまだ実験的なものなのですか?
内容( 'file_name'など)で何をしたいですか? – malbarbo
私は[Maildirs](https://cr.yp.to/proto/maildir.html)でメッセージを使って作業しています。ファイル名は不特定の一意の部分の後に '': ''といくつかのフラグ文字が続く。ユニークな部分に触れることなく、フラグを調べたり変更したりしたい。 –
*これは本当にまだ実験的なものです* * 'unstable'でないなら、あなたはRust 1.xの全てに存在することができるはずです。 – Shepmaster