0-0.jpeg0-1.jpeg0-5.jpeg0-9.jpeg0-10.jpeg0-12.jpeg
….
当我加载文件时:
fileInfo[] files = di.Getfiles();
他们的订单错误(他们应该像上面那样):
0-0.jpeg0-1.jpeg0-10.jpeg0-12.jpeg0-5.jpeg0-9.jpeg
如何解决?
我试图对它们进行排序,但没办法:
1) Array.sort(files,(f1,f2) => f1.name.Compareto(f2.name));2) Array.sort(files,(x,y) => StringComparer.OrdinalignoreCase.Compare(x.name,y.name));解决方法 按字母顺序,“错误”的顺序实际上是正确的.如果你想要按数字排序,那么你需要:
>将文件名转换为数字列表并对其进行排序
>以字母和数字排序相同的方式命名文件(0-001.jpeg和0-030.jpg)
>依靠文件创建时间进行排序(假设文件是按顺序创建的).
有关#3的示例,请参阅Sorting Directory.GetFiles()的答案.
总结以上是内存溢出为你收集整理的C#按名称中的自然数排序对文件进行排序?全部内容,希望文章能够帮你解决C#按名称中的自然数排序对文件进行排序?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)