从C#中的文件路径中提取文件名?

时间:2013-06-27 13:13:51

标签: c# filenames filepath

我见过几个类似的问题,但我无法弄清楚我做错了什么。 我有一个列表框,我希望列出所有选定的测试文件,而不是整个路径。使用此当前代码,列表框中不会输入任何文本。我哪里错了?

if (cmdBrowse.ShowDialog() == DialogResult.OK)
{
    string testNameShort = Path.GetFileName(listboxTestsToRun.Text.ToString());
    listboxTestsToRun.Items.Add(testNameShort);
}

提前致谢!

3 个答案:

答案 0 :(得分:8)

假设 cmdBrowse是一个OpenFileDialog,并且您希望将用户选择的文件名添加到列表框中。在这种情况下,您可以编码

if (cmdBrowse.ShowDialog() == DialogResult.OK)
{
   if(cmdBrowse.FileName.Length > 0)
   {
      string testNameShort = Path.GetFileName(cmdBrowse.FileName);
      listboxTestsToRun.Items.Add(testNameShort);
   }
}

答案 1 :(得分:1)

如果cmdBrowseOpenFileDialog,那么,除非您期望列表框中有其他有意义的内容,否则您需要使用用户选择的路径(这是我怀疑你正在尝试做的事情,例如:

var fileName = Path.GetFileName(cmdBrowse.FileName);

答案 2 :(得分:1)

查看在开始检索的路径上执行Path.GetFileNameWithoutExtension(FilePath)方法,然后将它们添加到框中