在Windows资源管理器中排序顺序


5

下面描述的行为发生在Windows-7系统和Windows XP上。我们在双语环境中运作 - 英语和希伯来语。

在Windows资源管理器中,我们按名称对文件进行排序,列出它们的顺序不是我们所期望的。以下是按Windows资源管理器排序的文件名列表(所有文件都有.pdf后缀):

1G110033H-PP
19C050G-PP-ORB
19C050H-PPRM
19C100H-PPRM
19C-MBPS-PP
19C-MBPS-PP-1
29AAC050-PP
29AAC100-PP
29AAC100-PPUL  
29B004064-PP
101AC050-PP
101AC100-PP
101B100-PPE
1091003G-PPFSUL
10108033G-PPSA
10125033H-PPM

在此输入图像描述

在我看来,首先根据名称中第一个字母字符的位置对项目进行排序,然后,在这些组中,它们按“正常”字母数字顺序排序。

也就是说,在第一个位置具有字母字符的所有文件都在列表的顶部,接着是在第二个位置具有第一个字母字符的那些文件,接着是在第三个位置具有第一个字母字符的那些文件,依此类推。

另一种看待这种情况的方法是,在由数字和字母组成的文件名中,sort将名称中的第一组数字视为主要排序节点,其余名称为辅助排序节点。

现在我理解了排序逻辑,这不是一个大问题,但我想知道为什么会发生这种情况?


是的,它按数字值排序数字,而不是按字符排序。在由数字命名的文件列表中,在400.txt之前使用5.txt看起来更自然。
布莱恩


@davebaldwin你可以把它作为答案发布吗?
Aprillion

@deathApril,他已经做了,但它只是一个链接帖子,因此被删除并转换为评论。
Synetech

1
@Haim,它正在发生,因为101  AC050> 29  AAC050> 19  C100H> 1  G110033H。
Synetech

Answers:


4

默认情况下,较新的排序顺序将文件和文件夹名称中的字符串视为数字内容,而不是文本。文件夹和文件名中的数字根据其数值排序

在以下示例中,请注意如何对包含数字的以下文件进行排序。

Windows Vista,Windows XP和Windows Server 2003

5.txt
11.txt
88.txt

在这个例子中,88是一个数值较高比值5。因此,88.txt当您按名称按升序对文件夹进行排序时,会在5.txt之后列出。

来源:Windows Vista,Windows XP和Windows Server 2003中名称包含数字的文件和文件夹的排序顺序与Windows 2000中的排序顺序不同


1
好像你的例子是空的。不会的东西,开头8 总是一些开头来后5,无论数字与文字排列顺序?
格伦斯莱登


0

如果您更喜欢使用组策略(而不是手动编辑注册表)来关闭Windows文件资源管理器中的数字排序选项,则可以使用组策略编辑器gpedit.msc)来修改以下策略项之一(即,特定用户或整个机器):

>计算机配置(或...用户配置)
        >管理模板
                > Windows组件
                        >文件资源管理器
                                •在文件资源管理器中关闭数字排序

说明
(来自Windows 10策略项元数据)
此策略设置允许您按字面顺序排序文件名(如在Windows 2000和更早版本中),而不是按数字顺序排序。如果启用此策略设置,文件资源管理器将按文件名中的每个数字对文件名进行排序(例如,111 <22 <3)。如果禁用或未配置此策略设置,文件资源管理器将通过增加数值(例如,3 <22 <111)对文件名进行排序。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.