私は自分の.exeコンソールアプリケーションと同じディレクトリにフォルダを持っています。私はそのフォルダ内のすべてのフォルダのリストを作成したい(それはClientFiles
と呼ばれている)が、私は完全なパスを望んでいない。私はこのような階層構造を持っているのであれば:「Folder1に」、「フォルダ2」、「FOLDER3」:指定したフォルダ内のすべてのフォルダのパス名ではなく、名前をリストに格納しますか?
ClientFiles
---\ Folder1
---\ Folder2
---\ Folder3
私は、文字列を含むリストで終わる必要があります。
List<string> clientNumbers = Directory
.GetDirectories(AppDomain.CurrentDomain.BaseDirectory + "ClientFiles\\")
.ToList<string>();
それが戻っされるリストには、各要素の完全なパスが含まれています
これは私が今持っているものです。これを解決する簡単な方法はありますか?私は前のパスのテキストを先読みして削除することができると思うが、それは余分に見える。 LINQラムダ式を使用
List<string> clientNumbers = Directory.GetDirectories(AppDomain.CurrentDomain.BaseDirectory + "ClientFiles\\").ToList<string>()
.Select(x=>x.Split('\').LastOrDefault());
特にここでは、フォルダ名のみが望まれているfileNamesをしないでください。 –
@CapnJack関数名を少し誤解しますが、 'Path.GetFileName(string)'はフォルダオブジェクトであればフォルダ名を与えます。 – JNYRanger
うわー、これは誤解を招くものですが、うまくいきます!最も簡単な応答のためのあなたの答えとして印を付けるつもりです。ありがとう –