6

我有一个保存文件对话框,我只想获取输入的文件名。相当于

    openfiledialog.SafeFileName;

保存文件对话框没有SafeFileName属性并FileName返回文件名、路径和扩展名。请问我如何只提取文件名。

4

2 回答 2

18

如果您想要带有扩展名的文件名,请使用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);
}

有关详细信息,请参阅 MSDN,尤其是Path具有许多有用方法的类:

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

于 2013-08-14T21:18:05.437 回答
2

还找到了我的问题的另一种解决方案

    FileInfo fi = new FileInfo(saveFileDialog1.FileName);
    string text = fi.Name;
于 2013-08-14T21:22:37.500 回答