我正在制作一个程序,将可执行文件添加到C#中的listBox。
我正在尝试将项目添加到listBox而不使用.exe扩展名。这是我之前的代码:
listBox1.Items.Add(openFiles.SafeFileNames.Replace(".exe",""));
它工作正常,但它不支持多个文件。当代码在选择多个项目而不是一个项目后运行时,它会添加项目“System.String []”(这不好!D:)
我可以得到一些帮助吗?我会尝试更好地解释一下,我没有多少睡眠,所以我可能会漫无目的地散步 -
我想同时向我的listBox添加多个文件,我的openFileDialog设置为multiSelect = true,但不包括文件扩展名(.exe)以及单个项目输入listBox。 / p>
如果不能轻易做到这一点,我只需切换回单选。
答案 0 :(得分:3)
使用System.IO.Path.GetFileNameWithoutExtension(file)
方法。
编辑:
foreach (string FileName in openFiles.SafeFileNames)
{
listBox1.Items.Add(System.IO.Path.GetFileNameWithoutExtension(FileName));
}
答案 1 :(得分:0)
我认为你需要做一个循环,从返回数组中的每个文件名中删除“.exe”:
foreach (string fileName in openFiles.SafeFileNames)
{
listBox1.Items.Add(fileName.Replace(".exe",""));
}
答案 2 :(得分:0)
使用FileInfo类。它具有带和不带扩展名的名称,以及整个目录名和文件名。 MSDN FileInfo