美文网首页
DirectoryInfo.GetFiles()排序问题

DirectoryInfo.GetFiles()排序问题

作者: 虫小白 | 来源:发表于2020-12-10 16:15 被阅读0次

1,使用文件的某种属性排序

//按照文件创建时间排序
 DirectoryInfo directoryInfo=new DirectoryInfo(folderPath);
 FileInfo[] fileInfos= directoryInfo.GetFiles();
 fileInfos.OrderBy(f => f.CreationTime);

碰到的问题:
在文件夹中有名称分别为1-10的十个文件,在文件夹中按照名称排序时,顺序为1,2,3,...,10。
但使用默认排序或使用下面的代码按照文件名称排序时,

fileInfos.OrderBy(f => f.Name);

得到的顺序为:1,10,2,3,...9。
使用下面的方式可解决:

 DirectoryInfo directoryInfo=new DirectoryInfo(folderPath);
 FileInfo[] fileInfos= directoryInfo.GetFiles();
                 
 List<string> files=new List<string>();
 Array.Sort(fileInfos, (x1, x2) => int.Parse(Regex.Match(x1.Name, @"\d+").Value).CompareTo(int.Parse(Regex.Match(x2.Name, @"\d+").Value)));
 foreach (FileInfo file in fileInfos)
 {
        files.Add(file.FullName);
 }

相关文章

  • DirectoryInfo.GetFiles()排序问题

    1,使用文件的某种属性排序 碰到的问题:在文件夹中有名称分别为1-10的十个文件,在文件夹中按照名称排序时,顺序为...

  • 数组排序问题(一)

    目录 冒泡排序 选择排序 插入排序 归并排序 小和问题 逆序对问题 冒泡排序 冒泡排序的思路:每一个数与自己后面的...

  • LintCode 463. 整数排序

    问题描述: 给一组整数,按照升序排序,使用选择排序,冒泡排序,插入排序或者任何 O(n2) 的排序算法。 问题示例...

  • 32.排序问题

    问题一:写出冒泡排序 问题二:写出选择法排序

  • 排序问题

    1、利用sort进行排序 2、冒泡排序 3、选择排序 4、插入排序 5 二元分算法(排序)

  • 排序问题

    1.冒泡排序 2.快速排序 3.选择排序 4.插入排序 5.希尔排序 6.桶排序 7.归并排序 8.堆排序 1.冒...

  • 排序问题

    今天打算把排序算法复习一下,顺便整理一下排序稳定性是指两个相等的元素排序之后二者的相对顺序是否不变排序可以大致分为...

  • 排序问题

    数组排序 数组排序最简单了,直接Arrays.sort(a); a是待排序的数组 根据对象中的成员变量来排序 这个...

  • 问题|排序

    学习笔记,可能有些谬误,请批判性阅读。 排序是数据结构的入门问题。过去的巨人们,进行了很大的努力,才使排序的时间复...

  • 排序问题

    排序问题一般用万能的sort函数就可以搞定,一般定义一下重载的比较函数就行,经常配合结构体一起使用。sort函数在...

网友评论

      本文标题:DirectoryInfo.GetFiles()排序问题

      本文链接:https://www.haomeiwen.com/subject/jgkrgktx.html