我有以下代码
DirectoryInfo taskDirectory = new DirectoryInfo(this.taskDirectoryPath);
FileInfo[] taskFiles = taskDirectory.GetFiles("*" + blah + "*.xml");
Run Code Online (Sandbox Code Playgroud)
我想按文件名对列表进行排序.
如何使用.net v2尽可能快速,轻松地完成此操作.
Jon*_*eet 39
调用Array.Sort,传入比较委托:
Array.Sort(taskFiles, delegate(FileInfo f1, FileInfo f2) {
return f1.Name.CompareTo(f2.Name);
});
Run Code Online (Sandbox Code Playgroud)
在C#3中,这变得稍微简单一些:
Array.Sort(taskFiles, (f1, f2) => f1.Name.CompareTo(f2.Name));
Run Code Online (Sandbox Code Playgroud)
或者,StringComparer如果要使用不区分大小写的排序顺序,则可以使用a :
Array.Sort(taskFiles,
(x, y) => StringComparer.OrdinalIgnoreCase.Compare(x.Name, y.Name));
Run Code Online (Sandbox Code Playgroud)
(或使用string.Compare(x.Name, y.Name, true),或任何其他比较字符串的方式:)
Array.Sort(taskFiles, delegate (FileInfo x, FileInfo y) {
return string.Compare(x.Name,y.Name);
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
33200 次 |
| 最近记录: |