可能的重复:
C# 中的自然排序顺序
我一直在寻找一些代码来按与 Windows 相同的名称对文件进行排序,
我的目录包含文件"SD-Patch-1.sql", "SD-Patch-2.sql" ..., "SD-Patch-10.sql"
,这是 Windows 格式化它们的方式,但在我的应用程序中,当按名称排序时,它会对它们进行排序
SD-Patch-1.sql
SD-Patch-10.sql
... to 19
SD-Patch-2.sql
我如何获得与 Windows 相同的排序以使用上述即时消息
FileInfo[] files = dirInfo.GetFiles();
Array.Sort(files, (f1, f2) => f1.Name.CompareTo(f2.Name));