我正在寻找一种排序字符串的算法,类似于在Windows资源管理器中排序文件(和文件夹)的方式。看来,当排序导致类似Windows资源管理器排序方法
name 1, name 2, name 10
,而不是
name 1, name 10, name 2
,你一个普通字符串比较得到的字符串数值都考虑在内。
我正要开始自己写这个,但想检查是否有人曾经这样做,并愿意分享一些代码或见解。我会这样做的方式是在比较它们之前将名称中的数字值加上前导零。这会导致类似于
name 00001, name 00010, name 00002
当使用常规字符串排序时,会给我正确的结果。
任何想法?
http://stackoverflow.com/questions/248603/natural-sort-order-in-c-sharp – 2014-02-12 11:23:41