在c#中获取目录中的文件名(无需获取路径)

时间:2014-03-20 06:49:02

标签: c# filenames arrays

我想将c:\test\中存在的所有文件的名称存储在字符串array s[]

让c:\ test

中有文件名a1.txt , a2.txt , a3.txt ...

我希望存储在s[0]= a1.txt s[1]= a2.txt中并且喜欢

我已经使用了代码

s = Directory.GetFiles(@"c:\\test");

但它会s[0]= c:\test\a1.txt 我不想要c:\test,我只想要a1.txt

所以有任何方法只存储文件名但不存储文件的路径

我还想知道是否有任何方法可以从字符串数组的每个字符串中删除一些字符

就像从字符串数组的每个字符串的开头剪切5个字符一样,这​​也可以解决我的问题。

2 个答案:

答案 0 :(得分:1)

使用GetFileName从路径中提取文件名。如下所示

string[] s = Directory.GetFiles(@"c:\\test");
foreach (string filename in s)
{     
    string fname = Path.GetFileName(filename);
}

答案 1 :(得分:0)

也许从hare复制.. @Vasea给我们的任何方式:

Directory.GetFiles(@"c:\test", "*", SearchOption.TopDirectoryOnly).Select(f => Path.GetFileName(f));