2017-03-03 3 views
-1

を親ディレクトリを取得し、次のとおりです。いくつかのファイルのためのC#

C:\Users\Stef\Desktop\bgdm_v2015\bgdm.dll 
C:\Users\Stef\Desktop\bgdm_v2015\something.txt 
C:\Users\Stef\Desktop\bgdm_v2015\folder2\file.txt 
C:\Users\Stef\Desktop\bgdm_v2015\folder2\file2.txt 
C:\Users\Stef\Desktop\bgdm_v2015\folder2\folder3\file.txt 

は、ファイルの親ディレクトリを取得する任意の関数はありますか? いいえ

bgdm_v2015 
bgdm_v2015 
bgdm_v2015 
folder2 
folder2 
folder3 

答えて

0

あなたの仕事を達成する方法は複数あります。

溶液1:

var result = Path.GetFileName(Path.GetDirectoryName("Enter Path here")); 

溶液2:

FileInfo info = new FileInfo("Enter Path here"); 
String getDirectoryName = info.Directory.Name; 
+0

はい、しかし、OPは、親ディレクトリの名前だけではなく、完全なパス –

+0

@ThomasLevesque大丈夫ああを望んでいる、私はこれが私の答えよりも効率的であると確信している私の答え –

4

Path.GetDirectoryName親の完全なパスを返し、Path.GetFileNameは、実際缶(パスの最後のセグメントを返します必ずしもファイルである必要はありません)。したがって、これを行うことができます:

string parentDirectoryName = Path.GetFileName(Path.GetDirectoryName(fullPath)); 
+0

を更新します。 – itsme86

+0

@ itsme86おそらく、実際にファイルシステムにアクセスすることはないので、文字列の操作に過ぎません。 –

+1

@ itsme86それがそうであるかそうでないかは、私はあなたのほうがはるかに読みやすいと言うでしょう;)これは悪くはありませんが... – sab669

0

FileInfoを使用してください。

var fileInfo = new FileInfo(fileWithPath); 
var parentName = fileInfo.Directory.Name; 
関連する問題