我只编写了一些关于在Windows目录(Windows 7)中排序文件的函数 测试时我发现,如果你有两个文件:
a3s.txt
一个-s.txt
Windows不会将“a-s.txt”放在第一位,但“ - ”的ASCII码为45,“3”的ASCII码为51.
这只发生在Windows资源管理器中,它不会发生在Windows命令shell中。
为什么会这样?
提前多多感谢
编辑:
这不是一个重复的问题
在其他帖子中,当文件名包含数字时,他们会讨论情况。但是,当你有“a_s.txt”和“a-s.txt”时,问题也会发生。此外,问题不仅发生在Windows 7中,还发生在Windows Server 2003上。
答案 0 :(得分:1)
这是设计的。 MSFT在Windows资源管理器中使用自定义排序算法,他们认为这对大多数用户来说更直观。有关更多信息和简要历史,请参阅this TechNet article。本文描述了自定义排序始于Windows XP,它是Server 2003的前身。
"这不是一个重复的问题"
症状不同,但根本原因是一样的。 Windows资源管理器不使用词典排序。