2013-08-14 14 views
5

ファイル保存ダイアログがあり、入力したファイル名のみを取得したいとします。保存ファイルダイアログボックスからファイル名のみを取得する方法

openfiledialog.SafeFileName; 

保存ファイルダイアログの等価にはSafeFileNameプロパティとFileName戻り、ファイル名、パスと拡張子の両方を持っていません。私はどのようにファイル名だけを抽出するのですか?

+1

最初に検索エンジンを使用することを検討してください。[c#ファイルパスからファイル名のみを取得する](http://www.bing.com/search?q=c%23+retrieve+only+filename+from+file +パス)は答えにかなりまともなショットを与える。 –

+0

@AlexeiLevenkovはGoogleを使ってみましたが、何も役に立たないとわかりました –

+0

@AlexeiLevenkov ahahahahahah!ビン! – Sebastien

答えて

15

の拡張子を使用する場合は、Path.GetFileName()を使用してください。あなたがそれを望むならば、なしでも同様にPath.GetFileNameWithoutExtension()を使用してください。

public void Test(string fileName) 
{ 
    string path = Path.GetDirectoryName(fileName); 
    string filename_with_ext = Path.GetFileName(fileName); 
    string filename_without_ext = Path.GetFileNameWithoutExtension(fileName); 
    string ext_only = Path.GetExtension(fileName); 
} 

は有用な方法の数を持って、特にPathクラス、さらに詳細については、MSDNを参照してください:

http://msdn.microsoft.com/en-us/library/System.IO.Path_methods.aspx

http://msdn.microsoft.com/en-us/library/system.io.path.getfilename.aspx

http://msdn.microsoft.com/en-us/library/system.io.path.getfilenamewithoutextension.aspx

2

はまた、私に別の解決策を見つけました問題

FileInfo fi = new FileInfo(saveFileDialog1.FileName); 
    string text = fi.Name; 
関連する問題