C# 在c中修剪数组中的所有字符串#

C# 在c中修剪数组中的所有字符串#,c#,arrays,string,trim,C#,Arrays,String,Trim,我使用以下代码获取目录的内容: string[] savefile = Directory.GetFiles(mcsdir, "*.bin"); comboBox1.Items.AddRange(savefile); 它返回为 C:\Users\Henry\MCS\save1.bin C:\Users\Henry\MCS\save2.bin 我怎样才能让它作为唯一的 save1.bin save2.bin 请注意,此应用程序将被其他人使用,因此名称并不总是“Henry”。 谢谢。使用。使用

我使用以下代码获取目录的内容:

string[] savefile = Directory.GetFiles(mcsdir, "*.bin");
comboBox1.Items.AddRange(savefile);
它返回为

C:\Users\Henry\MCS\save1.bin
C:\Users\Henry\MCS\save2.bin
我怎样才能让它作为唯一的

save1.bin
save2.bin
请注意,此应用程序将被其他人使用,因此名称并不总是“Henry”。 谢谢。

使用。

使用:

查看minitech的建议: 只要获得类型为
FileInfo[]
的数组,就不需要将其转换为字符串数组。只需将属性
DisplayMember
设置为要在
组合框中显示的属性名称即可

FileInfo[] savefile = new DirectoryInfo(mcsdir).GetFiles("*.bin");
comboBox1.DisplayMember = "Name";
comboBox1.DataSource = savefile;
使用此选项,您可以将原始的
FileInfo[]
数组与所有其他信息(关于文件的完整路径)一起保留,同时只显示控件中的短文件名(不带路径)


(我假设您的问题是关于WinForms的。如果您使用Silverlight或WPF,则需要使用“Target”属性设置属性)。

我建议改为使用
DirectoryInfo.GetFiles
和LINQ:

FileInfo[] savefile = new DirectoryInfo(mcsdir).GetFiles("*.bin");
comboBox1.Items.AddRange(savefile.Select(x => x.Name).ToArray());

谢谢,伙计,我会用这个。。。因为您的另一个答案返回字符串。@user1067461:这不是我的答案:)我只是编辑了它,因为它的结尾没有句点。不过还是谢谢你。
FileInfo[] savefile = new DirectoryInfo(mcsdir).GetFiles("*.bin");
comboBox1.Items.AddRange(savefile.Select(x => x.Name).ToArray());