这是因为在文件夹的排序中,默认情况下使用的是系统的区域设置,而中文文件夹的排序方式可能与英文文件夹不同。

如果您希望按照中文名称的顺序排序文件夹,可以使用StringComparer类和Comparer.Default属性来指定排序规则。具体代码如下:

List<string> toBeDownloadedFolders = folderInfos.GetDirectories("*.*", SearchOption.AllDirectories)
    .Select(file => file.FullName)
    .OrderBy(file => file, StringComparer.Create(new CultureInfo('zh-CN'), false))
    .ToList();

StringComparer.Create方法中,我们传入了一个CultureInfo对象来指定中文区域设置,并将最后一个参数设置为false来指定不区分大小写排序。

C# 文件夹排序:如何按中文名称排序?

原文地址: https://www.cveoy.top/t/topic/fBo 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录