文件排序问题

时间:2011-05-20 06:19:55

标签: .net sorting

  

可能重复:
  Sort on a string that may contain a number
  How would I sort a list of files by name to match how Windows Explorer displays them?

向大家致意!!!

使用Directory.GetFiles方法获取文件时遇到问题。我的目录中有以下顺序的文件。

Slide1.png,Slide2.png,Slide3.png,Slide4.png等等。

当我收到文件时,它会以Slide1.png,Slide10.png,Slide11.png,Slide12.png,Slide2.png,Slide21png等格式返回...

使用文件名进行排序并组合相同的值。我正在尝试Array.sort()但它不按我的意愿排序。我想要以下顺序。

Slide1.png,Slide2.png,Slide3.png,Slide4.png等等。

我使用的是VB.NET Framework 4.0版。

谢谢

2 个答案:

答案 0 :(得分:0)

你必须用零填充数字,如下所示:

Slide01.png
Slide02.png
...
Slide10.png
...

我自己遇到了很多问题,所以如果你有很多事要做(我有600张图片),可以尝试批量重命名,如Metamorphose

答案 1 :(得分:0)

问题在于我们在字符串方面,1,10,2是正确的顺序。虽然在数字上显然不是。

这是我发现的一篇文章,其中包括:http://www.codeproject.com/KB/recipes/csnsort.aspx