次のようなディレクトリがあります。
C:\Users\me\Projects\
私のアプリケーションでは、特定のプロジェクト名をそのパスに追加します。
C:\Users\me\Projects\myProject
その後、それをメソッドに渡したいと思います。このメソッド内では、プロジェクト名も使用したいと思います。パス文字列を解析して最後のフォルダー名を取得する最良の方法は何ですか?
回避策はパスとプロジェクト名を関数に渡すことですが、1つのパラメーターに制限できることを望んでいました。
できるよ:
string dirName = new DirectoryInfo(@"C:\Users\me\Projects\myProject\").Name;
またはPath.GetFileName
のように(ちょっとしたハックで)を使用します:
string dirName2 = Path.GetFileName(
@"C:\Users\me\Projects\myProject".TrimEnd(Path.DirectorySeparatorChar));
Path.GetFileName
は、パスからファイル名を返します。パスが\
で終了している場合、空の文字列を返すため、TrimEnd(Path.DirectorySeparatorChar)
string path = @"C:\Users\me\Projects\myProject";
string result = System.IO.Path.GetFileName(path);
結果= myProject