paip.目录文件列表排序算法

----作者Attilax , 1466519819@qq.com---  
今天要给一个目录下文件排序。但是效果总是不WIN7的不同。它是按字符来排序的……

实际的排序是这样的。

先排列数字文件列表。按数字大小排。

然后非数字文件名列表……按字符比较来排。

FileSystemInfo [] files = dirinfo.GetFileSystemInfos();

System.Collections.Generic.List<FileInfo> li=toList(files);
 
 Comparison<FileInfo> com = new Comparison<FileInfo>(Compare);
 li.Sort(com);

private int Compare(FileInfo info1, FileInfo info2)
{

String filenameNoEx = Path.GetFileNameWithoutExtension(info1.Name);
    String filenameNoEx2 = Path.GetFileNameWithoutExtension(info2.Name);
    if( m.str.isNum(filenameNoEx))
        if (m.str.isNum(filenameNoEx2))
        {
            int one = Int32.Parse(filenameNoEx.ToString() );
            int two = Int32.Parse(filenameNoEx2.ToString() );
            if (two > one)
                return -1;
            else
                return 1;
        }
    //try
    //{
    //    int one = Int32.Parse(info1.Name.ToString().Replace(".jpg", ""));
    //    int two = Int32.Parse(info2.Name.ToString().Replace(".jpg", ""));
    //    if (two > one)
    //        return -1;
    //    else
    //        return 1;
    //}
    //catch (Exception ex) { }
    return 0;
    int result;
    CaseInsensitiveComparer ObjectCompare = new CaseInsensitiveComparer();
    result = ObjectCompare.Compare(info1.FullName, info2.FullName);
    return result;
}

paip.目录文件列表排序算法相关推荐

  1. linux去掉java路径_Java显示目录文件列表和删除目录

    Java显示目录文件列表和删除目录 以d:\a目录为例,假设D:\a目录内的结构如下: d:\a |--a.sql |--back.log |--b | |--e | | |--1.txt | | | ...

  2. 部署阿里云盘的目录文件列表程序教程

    现在拥有阿里云盘账号的伙伴应该很多了,大部分都有1T的存储容量,小部分有6T,重要的是上传下载的速度很快,相对于其他的网盘,要么是传输速度慢,要么是存储容量太低,所以阿里云盘算是目前最好的免费网盘了, ...

  3. 阿里云盘的目录文件列表程序Alist

    网盘列表软件很多,老苏之前分享过 Z-file 和 ShareList,这两款软件都支持多家第三方存储,可以直接将网盘从个人使用变成一个面向大众的资源网站,不过老苏觉得还是自己低调用用就好了,毕竟是会 ...

  4. 使用window的cmd命令输出目录文件列表清单

    使用window的cmd命令输出目录文件列表清单 使用window的cmd命令,输出文件夹文件列表. 注意,先进行cmd模式 dir >print.txt dir /b >print.tx ...

  5. android 文件大小排序,android 文件列表排序

    File排序:按照文件夹->文件,文件名排序 创建比较器: public class FileCompatator implements Comparator { @Override publi ...

  6. java显示目录文件列表和删除目录

    以d:\a目录为例,假设D:\a目录内的结构如下: d:\a |--a.sql |--back.log |--b | |--e | | |--1.txt | | |--2.txt | | `--3.t ...

  7. C语言遍历目录文件并排序

    有时候需要遍历目录文件,但是默认的函数并不支持指定排序的功能,现在介绍一种排序的遍历目录方式,默认按照文件名的数字进行排序 window版本 string split_pathexe(string s ...

  8. 开启Nginx的目录文件列表功能

    ngx_http_autoindex_module  此模块用于自动生成目录列表,ngx_http_autoindex_module只在 ngx_http_index_module模块未找到索引文件时 ...

  9. python 目录遍历 目录文件列表 介绍

    目录 一.使用os.walk遍历所有的目录和文件 二.利用os.listdir递归获取所有的目录路径和文件路径 目录结构如下图: test---a------d------g--------g.txt ...

  10. linux c 获取目录文件列表

    代码如下: #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <s ...

最新文章

  1. 判断一个字符串是另外字符串的旋转字符串
  2. JAVASE8流库Stream学习总结(三)
  3. Android Studio 快捷键使用说明
  4. php读程序,PHP 读取大文件程序代码
  5. ASP.NET Web下基于Forms的验证
  6. 用委托来实现IEqualityComparer接口
  7. Memcached(四)Memcached的CAS协议
  8. 理解和使用NT驱动程序的执行上下文
  9. git commit 规范不对导致报错subject may not be empty [subject-empty]type may not be empty [type-empty]
  10. 【uniapp】索引列表展示更多信息
  11. UTONMOS:元宇宙链游之风、燎原之势
  12. 苹果电脑怎么关闭当前页面、打开终端、截图
  13. 已经围上为何不算目_有答案的小学语文教师教材过关考试模拟试卷1
  14. POJ 1265 Area
  15. ip addr 不显示ip地址
  16. linux下给firefox安装flashplayer ubuntu下的cp,rm命令
  17. linux fuser主机关闭,linux 下强制umount+Fuser命令详解
  18. 【二分法】多种情况下的边界条件,区间选择汇总,小结
  19. 原来 Element 的组件源码还能这么看
  20. 数字图像处理学习笔记(七)——用Pycharm及MATLAB实现三种图像内插法(最近邻内插法、双线性内插法、双三次内插法)

热门文章

  1. Vue折腾记 - (2)写一个不大靠谱的面包屑组件
  2. [25年后的统计系会是什么样?
  3. 我的微博,三层嵌套,
  4. ASP.NET 高级编程基础第十二篇—服务器控件
  5. 怎样把水货E72升级后英文变中文
  6. oracle表中多个字段同时和另一个表中关联解决办法
  7. LeetCode 309 Best Time to Buy and Sell Stock with Cooldown 解决方案
  8. 【笔记】FWT 快速沃尔什变换
  9. 字符串解码DecodeString
  10. poj1062 昂贵的聘礼