对目录文件进行排序并获取最高文件名

din*_*rca 7 c# sorting wpf file

我有一个40个文件的目录,名称从0到39(例如),我试图获取其名称中最大数字的文件(这意味着我需要得到"39")我试图对目录进行排序..我尝试过使用以下主题:

如何检索目录中的文件列表,按名称排序

在C#中对Directory.GetFiles的结果进行排序

没有什么对我有用..我尝试了每种方法 - 使用Linq和其他...我不知道为什么..

我得到以下排序结果(见下图): 在此输入图像描述

谢谢您的帮助,

Din Bracha.

H.B*_*.B. 7

它们按照这种方式排序是合乎逻辑的,你会引入一些语义来按数字排序,即将所有文件名解析为数字,然后按顺序对文件进行排序.

就像是

files.OrderBy(path => Int32.Parse(Path.GetFileNameWithoutExtension(path)))
Run Code Online (Sandbox Code Playgroud)

使用Last()获得最高编号的文件.