在fileinfo列表中获取文件名列表

san*_*p22 1 .net c# linq list

我怎样才能从中获取文件名列表

List<FileInfo> FileInfoList;
Run Code Online (Sandbox Code Playgroud)

使用LINQ?我想要所有文件名

List<string> FileNames;
Run Code Online (Sandbox Code Playgroud)

名单.我不想构造一个foreach循环,也不想迭代地添加文件名.

p.s*_*w.g 6

您可以使用选择扩展方法:

List<string> FileNames = FileInfoList.Select(x => x.Name).ToList();
Run Code Online (Sandbox Code Playgroud)

但是,如果你真的不需要它List<T>,你可以通过简单地省略ToList方法来利用Linq的懒惰执行能力:

IEnumerable<string> FileNames = FileInfoList.Select(x => x.Name);
Run Code Online (Sandbox Code Playgroud)

或者如果您更喜欢查询语法:

IEnumerable<string> FileNames = from x in FileInfoList select x.Name;
Run Code Online (Sandbox Code Playgroud)