c# IComparer比较字符串

一时失言乱红尘 2022-06-08 00:53 306阅读 0赞

例如:幻灯片50,幻灯片6,幻灯片40
排序完后:幻灯片6,幻灯片40,幻灯片50

  1. public class PathCompare : IComparer<string>
  2. {
  3. public int Compare(string x, string y)
  4. {
  5. string[] aBuf = x.Split('\\');
  6. string[] bBuf = y.Split('\\');
  7. string[] aNameBuf = aBuf[aBuf.Length - 1].Split('.');
  8. string[] bNameBuf = bBuf[bBuf.Length - 1].Split('.');
  9. if (aNameBuf[0].Length > bNameBuf[0].Length)
  10. {
  11. return 1;
  12. }
  13. else if (aNameBuf[0].Length < bNameBuf[0].Length)
  14. {
  15. return -1;
  16. }
  17. else if (aNameBuf[0].Length == bNameBuf[0].Length)
  18. {
  19. return aNameBuf[0].CompareTo(bNameBuf[0]);
  20. }
  21. return 0;
  22. }
  23. }

发表评论

表情:
评论列表 (有 0 条评论,306人围观)

还没有评论,来说两句吧...

相关阅读

    相关 c语言】字符串比较

    独立实现标准字符串库的strcmp函数,即字符串比较函数,从键盘输入两个字符串,按字典序比较大小,前者大于后者输出1,前者小于后者输出-1,两者相等输出0。 样例输入:

    相关 字符串比较

    题目描述 比较两个字符串s1和s2的大小,如果s1>s2,则输出一个正数;若s1=s2,则输出0;若s1<s2,则输出一个负数。 要求:不用strcpy函数;两个字符串