Windows资源管理器使用的排序顺序中的第一个字符是什么?

shx*_*fee 49 windows algorithm programming-languages char special-characters

例如,在Windows文件夹中,如果我们创建一些文件并将其命名为1.html,2.txt,3.txt,photo.jpg,zen.png,则顺序将保持不变.但是如果我们创建另一个名为_file.doc的文件,它将被放在顶部.(考虑到我们按名称降序排序)

同样,将被视为第一个的角色是什么,这样如果我使用该角色,它会将文件放在层次结构的顶部?

lim*_*fan 30

第一个可见的角色是'!' 根据ASCII表格.最后一个是'〜'所以"!file.doc"或"~file.doc"将取决于您的排名顺序.您可以在这里查看ascii表: http:// www .asciitable.com /

  • 所有标点符号(无论是什么代码点)在字母前的数字之前排序,加上破折号的特殊行为.不是ASCII顺序.因此:文件#FILE $文件(文件[文件_file {文件〜+文件文件☺file1文件9file 66fileå文件-afile -afile -afile zfile -zfile -zfile -zfile (31认同)
  • 我同意@NigelTouch,这不是ASCII顺序,尝试将abc重命名为~abc,检查ascii表中的〜字符,你会发现它不是ascii顺序. (4认同)
  • 错误的答案,从未经过回答者的测试,但获得了24票。 (3认同)
  • 各种空白字符排在第一位; 假设您不想在文件名中添加新行,`tab` <`space` <`!`. (2认同)
  • 确实如此,但我不相信文件名可以以空格开头。 (2认同)
  • 我现在正用双眼看一个文件夹结构-以前是按字母顺序排列的! (2认同)
  • @MrLister 毫无根据和错误的猜测。这里的第一个评论是在答案后不久发布的,请注意,答案是错误的。答案是“根据 ASCII 表”...而不是根据在 WE 中实际尝试。阅读问题——“_”出现在数字之前,但 ASCII 中却没有。答案是完全错误的,而且一直都是。我的评论很到位。 (2认同)

小智 25

我有同样的问题.我想在排序的底部'埋葬'一个文件夹,而不是用'!'将它带到顶部.字符.Windows将大多数特殊字符识别为"特殊",因此它们在顶部排序.

但是,如果你认为在英文字符之外,你会发现很多运气.我使用了字符映射和arial字体,向下滚动到'〜',其他滚动到希腊字母表.国会大厦Xi,worked,对我来说效果最好,但我没有检查哪个是实际的"最低".

  • 除了希腊语Xi(Ξ),你会发现Omega(Ω),最后是Omega和Prosgegrammeni(ῼ).那你就是希伯来语(אל)和阿拉伯语(لا)和中文(终)和克林贡语...... (11认同)
  • 我喜欢Omega`Ω`,因为它的自我记录性质是"最后一个"(在Z之后)的字符.:) (4认同)
  • 这是一个非字母/字母字符,排序低:`ꞈ`('MODIFIER LETTER LOW CIRCUMFLEX ACCENT'([U + A788](http://www.fileformat.info/info/unicode/char/a788/index. htm)).)它排在Nigel的阿拉伯语(لا)之后和他的中文(终)之前.(在Windows 7中用英语测试(实际上是德语,但设置为英语).)(在此处找到:http://www.neowin.net/forum/topic/722540-alphabetical-order-of-all-characters/#entry592057102 ) (2认同)

hmu*_*ner 14

如果您使用google进行排序顺序 Windows资源管理器,您会发现Windows资源管理器(自Windows XP以来)显然在"按名称"排序顺序中使用函数StrCmpLogicalW.我没有找到关于下划线字符处理的信息.我对文档中的以下注释感到好笑:

此函数的行为以及它返回的结果可以在发行版之间发生变化....

  • 事实上它似乎已经改变了.快进到Windows 8,一些特殊字符似乎被忽略.我的习惯是在文件夹名称前加上" - "以将其置于顶部,现在不起作用......但是,刚发现使用'='确实将我的文件夹放回到顶部.好极了! (4认同)
  • 微软说实话;-) (4认同)

小智 6

我知道这是一个老问题,但很容易检查出来.只需创建一个包含一堆虚拟文件的文件夹,这些文件的名称是键盘上的每个字符.当然,你不能真正使用\ | /:*?"<>和领先和尾随空白是一个可怕的想法.

如果你这样做,看起来没人做,你会发现FIRST字符的Windows排序顺序为1.特殊字符2.数字3.字母

但对于后续角色,它似乎是1.数字2.特殊字符3.字母

由于Y2K非事件后的"改进",数字有点奇怪.你会觉得特殊字符会排序ASCII顺序,但也有例外,尤其是前两者,撇号和破折号,最后两,加和平等.此外,我听说过,但实际上没有看到有关破折号被忽略的事情.事实上,这不是我的经验.

所以,ShxFee,我假设你的意思是排序应该是升序而不是降序,并且名称的第一个字符的排序顺序中的最顶层(第一个)字符是撇号.

正如NigelTouch所说,特殊字符不会排序为ASCII,但我上面的注释确切地说明了以正常的ASCII顺序排序和排序的内容.但他总是先排序的特殊字符肯定是错的.如上所述,对于名称的第一个字符,这似乎只是真实的.


u8i*_*8it 6

根据我的测试,有以下三个字符排序标准。除此之外,较短的字符串排序在以相同字符开头的较长字符串之上。

注意:此测试仅查看第一个字符排序,并没有查看此答案描述的边缘情况,它发现,对于第一个字符之后的所有字符,数字优先于符号(即顺序为 1。符号 2。数字 3. 第一个字符的字母,1. 数字 2. 符号 3. 后面的字母)。这个答案还表明 Unicode/ASCII 排序层可能不完全一致。如果我有时间研究这些边缘情况,我会更新这个答案。

注意:请务必注意,排序顺序可能会按照此答案所述进行更改。我不清楚这实际上改变的程度。我已经完成了这个测试,发现它在 Windows 7 和 Windows 10 上都有效。


符号
拉丁语(按 Unicode 值 (U+xxxx)
排序)希腊语(按 Unicode 值 (U+xxxx)
排序)西里尔文(按 Unicode 值 (U+xxxx)
排序)希伯来语(按 Unicode 值 (U+xxxx) 排序)
阿拉伯语(按 Unicode 值 (U+xxxx) 排序)

数字
拉丁语(按 Unicode 值 (U+xxxx)
排序)希腊语(按 Unicode 值 (U+xxxx)
排序)西里尔文(按 Unicode 值 (U+xxxx)
排序)希伯来语(按 Unicode 值 (U+xxxx) 排序)
阿拉伯语(按 Unicode 值 (U+xxxx) 排序)

字母
拉丁语(按 Unicode 值 (U+xxxx)
排序)希腊语(按 Unicode 值 (U+xxxx)
排序)西里尔字母(按 Unicode 值 (U+xxxx)
排序)希伯来语(按 Unicode 值 (U+xxxx) 排序)
阿拉伯语(按 Unicode 值 (U+xxxx) 排序)

在此处输入图片说明


排序规则序列与观察顺序

值得注意的是,实际上有两种看待这个的方式。最终,您拥有的是按特定顺序应用的排序规则,反过来,这会产生一个观察到的顺序。旧规则的排序嵌套在新规则的排序之下。这意味着应用的第一个规则是观察到的最后一个规则,而应用的最后一个规则是观察到的第一个或最上面的规则。

排序规则序列

1.) 按 Unicode 值 (U+xxxx)
排序 2.) 按文化/语言
排序 3.) 按类型(符号、数字、字母)排序

观察顺序

  • 最高级别的分组按类型按以下顺序...

    1.) 符号
    2.) 数字
    3.) 字母

    因此,任何语言的任何符号都出现在任何语言的任何数字之前,而任何语言的任何字母都出现在所有符号和数字之后。

  • 分组的第二级是按文化/语言。以下顺序似乎适用于此:

    拉丁语
    希腊语
    西里尔语
    希伯来语
    阿拉伯语

  • 观察到的最低规则是 Unicode 顺序,因此类型语言组中的项目按 Unicode 值 (U+xxxx) 排序。


改编自:https : //superuser.com/a/971721/496260


CoD*_*anX 5

Windows代码页1252(Latin-1)中只有几个字符不能用作名称。请注意?.txt,尽管在文件系统中允许这样做,但Windows资源管理器将删除名称中的前导空格,并且不允许您使用点(例如)来命名文件空间!但是只有一个空格,没有文件扩展名是无效的。

如果通过例如Python脚本创建文件(这就是我所做的),那么您可以轻松地找出实际允许的内容以及字符的排序顺序。排序顺序因您的语言环境而异!以下是我的脚本的结果,该脚本德语 Windows 10 Pro 64位上使用Python 2.7.15运行:

允许:

       32  20  SPACE
!      33  21  EXCLAMATION MARK
#      35  23  NUMBER SIGN
$      36  24  DOLLAR SIGN
%      37  25  PERCENT SIGN
&      38  26  AMPERSAND
'      39  27  APOSTROPHE
(      40  28  LEFT PARENTHESIS
)      41  29  RIGHT PARENTHESIS
+      43  2B  PLUS SIGN
,      44  2C  COMMA
-      45  2D  HYPHEN-MINUS
.      46  2E  FULL STOP
/      47  2F  SOLIDUS
0      48  30  DIGIT ZERO
1      49  31  DIGIT ONE
2      50  32  DIGIT TWO
3      51  33  DIGIT THREE
4      52  34  DIGIT FOUR
5      53  35  DIGIT FIVE
6      54  36  DIGIT SIX
7      55  37  DIGIT SEVEN
8      56  38  DIGIT EIGHT
9      57  39  DIGIT NINE
;      59  3B  SEMICOLON
=      61  3D  EQUALS SIGN
@      64  40  COMMERCIAL AT
A      65  41  LATIN CAPITAL LETTER A
B      66  42  LATIN CAPITAL LETTER B
C      67  43  LATIN CAPITAL LETTER C
D      68  44  LATIN CAPITAL LETTER D
E      69  45  LATIN CAPITAL LETTER E
F      70  46  LATIN CAPITAL LETTER F
G      71  47  LATIN CAPITAL LETTER G
H      72  48  LATIN CAPITAL LETTER H
I      73  49  LATIN CAPITAL LETTER I
J      74  4A  LATIN CAPITAL LETTER J
K      75  4B  LATIN CAPITAL LETTER K
L      76  4C  LATIN CAPITAL LETTER L
M      77  4D  LATIN CAPITAL LETTER M
N      78  4E  LATIN CAPITAL LETTER N
O      79  4F  LATIN CAPITAL LETTER O
P      80  50  LATIN CAPITAL LETTER P
Q      81  51  LATIN CAPITAL LETTER Q
R      82  52  LATIN CAPITAL LETTER R
S      83  53  LATIN CAPITAL LETTER S
T      84  54  LATIN CAPITAL LETTER T
U      85  55  LATIN CAPITAL LETTER U
V      86  56  LATIN CAPITAL LETTER V
W      87  57  LATIN CAPITAL LETTER W
X      88  58  LATIN CAPITAL LETTER X
Y      89  59  LATIN CAPITAL LETTER Y
Z      90  5A  LATIN CAPITAL LETTER Z
[      91  5B  LEFT SQUARE BRACKET
\\     92  5C  REVERSE SOLIDUS
]      93  5D  RIGHT SQUARE BRACKET
^      94  5E  CIRCUMFLEX ACCENT
_      95  5F  LOW LINE
`      96  60  GRAVE ACCENT
a      97  61  LATIN SMALL LETTER A
b      98  62  LATIN SMALL LETTER B
c      99  63  LATIN SMALL LETTER C
d     100  64  LATIN SMALL LETTER D
e     101  65  LATIN SMALL LETTER E
f     102  66  LATIN SMALL LETTER F
g     103  67  LATIN SMALL LETTER G
h     104  68  LATIN SMALL LETTER H
i     105  69  LATIN SMALL LETTER I
j     106  6A  LATIN SMALL LETTER J
k     107  6B  LATIN SMALL LETTER K
l     108  6C  LATIN SMALL LETTER L
m     109  6D  LATIN SMALL LETTER M
n     110  6E  LATIN SMALL LETTER N
o     111  6F  LATIN SMALL LETTER O
p     112  70  LATIN SMALL LETTER P
q     113  71  LATIN SMALL LETTER Q
r     114  72  LATIN SMALL LETTER R
s     115  73  LATIN SMALL LETTER S
t     116  74  LATIN SMALL LETTER T
u     117  75  LATIN SMALL LETTER U
v     118  76  LATIN SMALL LETTER V
w     119  77  LATIN SMALL LETTER W
x     120  78  LATIN SMALL LETTER X
y     121  79  LATIN SMALL LETTER Y
z     122  7A  LATIN SMALL LETTER Z
{     123  7B  LEFT CURLY BRACKET
}     125  7D  RIGHT CURLY BRACKET
~     126  7E  TILDE
\x7f  127  7F  DELETE
\x80  128  80  EURO SIGN
\x81  129  81  
\x82  130  82  SINGLE LOW-9 QUOTATION MARK
\x83  131  83  LATIN SMALL LETTER F WITH HOOK
\x84  132  84  DOUBLE LOW-9 QUOTATION MARK
\x85  133  85  HORIZONTAL ELLIPSIS
\x86  134  86  DAGGER
\x87  135  87  DOUBLE DAGGER
\x88  136  88  MODIFIER LETTER CIRCUMFLEX ACCENT
\x89  137  89  PER MILLE SIGN
\x8a  138  8A  LATIN CAPITAL LETTER S WITH CARON
\x8b  139  8B  SINGLE LEFT-POINTING ANGLE QUOTATION
\x8c  140  8C  LATIN CAPITAL LIGATURE OE
\x8d  141  8D  
\x8e  142  8E  LATIN CAPITAL LETTER Z WITH CARON
\x8f  143  8F  
\x90  144  90  
\x91  145  91  LEFT SINGLE QUOTATION MARK
\x92  146  92  RIGHT SINGLE QUOTATION MARK
\x93  147  93  LEFT DOUBLE QUOTATION MARK
\x94  148  94  RIGHT DOUBLE QUOTATION MARK
\x95  149  95  BULLET
\x96  150  96  EN DASH
\x97  151  97  EM DASH
\x98  152  98  SMALL TILDE
\x99  153  99  TRADE MARK SIGN
\x9a  154  9A  LATIN SMALL LETTER S WITH CARON
\x9b  155  9B  SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
\x9c  156  9C  LATIN SMALL LIGATURE OE
\x9d  157  9D  
\x9e  158  9E  LATIN SMALL LETTER Z WITH CARON
\x9f  159  9F  LATIN CAPITAL LETTER Y WITH DIAERESIS
\xa0  160  A0  NON-BREAKING SPACE
\xa1  161  A1  INVERTED EXCLAMATION MARK
\xa2  162  A2  CENT SIGN
\xa3  163  A3  POUND SIGN
\xa4  164  A4  CURRENCY SIGN
\xa5  165  A5  YEN SIGN
\xa6  166  A6  PIPE, BROKEN VERTICAL BAR
\xa7  167  A7  SECTION SIGN
\xa8  168  A8  SPACING DIAERESIS - UMLAUT
\xa9  169  A9  COPYRIGHT SIGN
\xaa  170  AA  FEMININE ORDINAL INDICATOR
\xab  171  AB  LEFT DOUBLE ANGLE QUOTES
\xac  172  AC  NOT SIGN
\xad  173  AD  SOFT HYPHEN
\xae  174  AE  REGISTERED TRADE MARK SIGN
\xaf  175  AF  SPACING MACRON - OVERLINE
\xb0  176  B0  DEGREE SIGN
\xb1  177  B1  PLUS-OR-MINUS SIGN
\xb2  178  B2  SUPERSCRIPT TWO - SQUARED
\xb3  179  B3  SUPERSCRIPT THREE - CUBED
\xb4  180  B4  ACUTE ACCENT - SPACING ACUTE
\xb5  181  B5  MICRO SIGN
\xb6  182  B6  PILCROW SIGN - PARAGRAPH SIGN
\xb7  183  B7  MIDDLE DOT - GEORGIAN COMMA
\xb8  184  B8  SPACING CEDILLA
\xb9  185  B9  SUPERSCRIPT ONE
\xba  186  BA  MASCULINE ORDINAL INDICATOR
\xbb  187  BB  RIGHT DOUBLE ANGLE QUOTES
\xbc  188  BC  FRACTION ONE QUARTER
\xbd  189  BD  FRACTION ONE HALF
\xbe  190  BE  FRACTION THREE QUARTERS
\xbf  191  BF  INVERTED QUESTION MARK
\xc0  192  C0  LATIN CAPITAL LETTER A WITH GRAVE
\xc1  193  C1  LATIN CAPITAL LETTER A WITH ACUTE
\xc2  194  C2  LATIN CAPITAL LETTER A WITH CIRCUMFLEX
\xc3  195  C3  LATIN CAPITAL LETTER A WITH TILDE
\xc4  196  C4  LATIN CAPITAL LETTER A WITH DIAERESIS
\xc5  197  C5  LATIN CAPITAL LETTER A WITH RING ABOVE
\xc6  198  C6  LATIN CAPITAL LETTER AE
\xc7  199  C7  LATIN CAPITAL LETTER C WITH CEDILLA
\xc8  200  C8  LATIN CAPITAL LETTER E WITH GRAVE
\xc9  201  C9  LATIN CAPITAL LETTER E WITH ACUTE
\xca  202  CA  LATIN CAPITAL LETTER E WITH CIRCUMFLEX
\xcb  203  CB  LATIN CAPITAL LETTER E WITH DIAERESIS
\xcc  204  CC  LATIN CAPITAL LETTER I WITH GRAVE
\xcd  205  CD  LATIN CAPITAL LETTER I WITH ACUTE
\xce  206  CE  LATIN CAPITAL LETTER I WITH CIRCUMFLEX
\xcf  207  CF  LATIN CAPITAL LETTER I WITH DIAERESIS
\xd0  208  D0  LATIN CAPITAL LETTER ETH
\xd1  209  D1  LATIN CAPITAL LETTER N WITH TILDE
\xd2  210  D2  LATIN CAPITAL LETTER O WITH GRAVE
\xd3  211  D3  LATIN CAPITAL LETTER O WITH ACUTE
\xd4  212  D4  LATIN CAPITAL LETTER O WITH CIRCUMFLEX
\xd5  213  D5  LATIN CAPITAL LETTER O WITH TILDE
\xd6  214  D6  LATIN CAPITAL LETTER O WITH DIAERESIS
\xd7  215  D7  MULTIPLICATION SIGN
\xd8  216  D8  LATIN CAPITAL LETTER O WITH SLASH
\xd9  217  D9  LATIN CAPITAL LETTER U WITH GRAVE
\xda  218  DA  LATIN CAPITAL LETTER U WITH ACUTE
\xdb  219  DB  LATIN CAPITAL LETTER U WITH CIRCUMFLEX
\xdc  220  DC  LATIN CAPITAL LETTER U WITH DIAERESIS
\xdd  221  DD  LATIN CAPITAL LETTER Y WITH ACUTE
\xde  222  DE  LATIN CAPITAL LETTER THORN
\xdf  223  DF  LATIN SMALL LETTER SHARP S
\xe0  224  E0  LATIN SMALL LETTER A WITH GRAVE
\xe1  225  E1  LATIN SMALL LETTER A WITH ACUTE
\xe2  226  E2  LATIN SMALL LETTER A WITH CIRCUMFLEX
\xe3  227  E3  LATIN SMALL LETTER A WITH TILDE
\xe4  228  E4  LATIN SMALL LETTER A WITH DIAERESIS
\xe5  229  E5  LATIN SMALL LETTER A WITH RING ABOVE
\xe6  230  E6  LATIN SMALL LETTER AE
\xe7  231  E7  LATIN SMALL LETTER C WITH CEDILLA
\xe8  232  E8  LATIN SMALL LETTER E WITH GRAVE
\xe9  233  E9  LATIN SMALL LETTER E WITH ACUTE
\xea  234  EA  LATIN SMALL LETTER E WITH CIRCUMFLEX
\xeb  235  EB  LATIN SMALL LETTER E WITH DIAERESIS
\xec  236  EC  LATIN SMALL LETTER I WITH GRAVE
\xed  237  ED  LATIN SMALL LETTER I WITH ACUTE
\xee  238  EE  LATIN SMALL LETTER I WITH CIRCUMFLEX
\xef  239  EF  LATIN SMALL LETTER I WITH DIAERESIS
\xf0  240  F0  LATIN SMALL LETTER ETH
\xf1  241  F1  LATIN SMALL LETTER N WITH TILDE
\xf2  242  F2  LATIN SMALL LETTER O WITH GRAVE
\xf3  243  F3  LATIN SMALL LETTER O WITH ACUTE
\xf4  244  F4  LATIN SMALL LETTER O WITH CIRCUMFLEX
\xf5  245  F5  LATIN SMALL LETTER O WITH TILDE
\xf6  246  F6  LATIN SMALL LETTER O WITH DIAERESIS
\xf7  247  F7  DIVISION SIGN
\xf8  248  F8  LATIN SMALL LETTER O WITH SLASH
\xf9  249  F9  LATIN SMALL LETTER U WITH GRAVE
\xfa  250  FA  LATIN SMALL LETTER U WITH ACUTE
\xfb  251  FB  LATIN SMALL LETTER U WITH CIRCUMFLEX
\xfc  252  FC  LATIN SMALL LETTER U WITH DIAERESIS
\xfd  253  FD  LATIN SMALL LETTER Y WITH ACUTE
\xfe  254  FE  LATIN SMALL LETTER THORN
\xff  255  FF  LATIN SMALL LETTER Y WITH DIAERESIS
Run Code Online (Sandbox Code Playgroud)

禁止:

\x00    0  00  NULL CHAR
\x01    1  01  START OF HEADING
\x02    2  02  START OF TEXT
\x03    3  03  END OF TEXT
\x04    4  04  END OF TRANSMISSION
\x05    5  05  ENQUIRY
\x06    6  06  ACKNOWLEDGEMENT
\x07    7  07  BELL
\x08    8  08  BACK SPACE
\t      9  09  HORIZONTAL TAB
\n     10  0A  LINE FEED
\x0b   11  0B  VERTICAL TAB
\x0c   12  0C  FORM FEED
\r     13  0D  CARRIAGE RETURN
\x0e   14  0E  SHIFT OUT / X-ON
\x0f   15  0F  SHIFT IN / X-OFF
\x10   16  10  DATA LINE ESCAPE
\x11   17  11  DEVICE CONTROL 1 (OFT. XON)
\x12   18  12  DEVICE CONTROL 2
\x13   19  13  DEVICE CONTROL 3 (OFT. XOFF)
\x14   20  14  DEVICE CONTROL 4
\x15   21  15  NEGATIVE ACKNOWLEDGEMENT
\x16   22  16  SYNCHRONOUS IDLE
\x17   23  17  END OF TRANSMIT BLOCK
\x18   24  18  CANCEL
\x19   25  19  END OF MEDIUM
\x1a   26  1A  SUBSTITUTE
\x1b   27  1B  ESCAPE
\x1c   28  1C  FILE SEPARATOR
\x1d   29  1D  GROUP SEPARATOR
\x1e   30  1E  RECORD SEPARATOR
\x1f   31  1F  UNIT SEPARATOR
"      34  22  QUOTATION MARK
*      42  2A  ASTERISK
:      58  3A  COLON
<      60  3C  LESS-THAN SIGN
>      62  3E  GREATER-THAN SIGN
?      63  3F  QUESTION MARK
|     124  7C  VERTICAL LINE
Run Code Online (Sandbox Code Playgroud)

资源管理器如何为我排序文件的屏幕截图

德语Windows资源管理器

高亮显示的文件带有?我手动添加了白色笑脸(Alt + 1),以显示此Unicode字符(U + 263A)的结尾位置,请参阅Jimbugs的答案

第一个文件的名称为空格(0x20),第二个文件为不间断空格(0xa0)。第三行下半部分中看起来没有名称的文件使用十六进制代码0x81、0x8D,0x8F,0x90、0x9D的字符(从上到下的顺序)。