名为“en_US_POSIX”、“en_001”和“en_150”的三个“特殊区域设置”到底是什么意思?

Edw*_*win 5 locale formatting posix windows-10

我的计算机系统(Windows 10)上有很多英语语言环境。大多数看起来像这样,并且有意义:

en_CA
en_DE
en_GB
en_IL
en_PK
en_US
...
Run Code Online (Sandbox Code Playgroud)

但有三个特殊的,似乎不对应于一个明确的物理区域:

en_001
en_150
en_US_POSIX
Run Code Online (Sandbox Code Playgroud)

通过进行一些挖掘,我为它们提取了以下“显示名称”(按顺序):

World
Europe
United States
Run Code Online (Sandbox Code Playgroud)

好的,那么“001”表示“世界”,“150”表示“欧洲”,“US_POSIX”表示“美国”,就像“en_US”一样?

重复的“en_US”语言环境有什么意义,“世界”和“欧洲”是什么?

应该指出的是,数字的格式似乎与美国版本中“世界”和“欧洲”的格式相同,这是出乎意料的。我以为他们会使用空格来表示数千个分隔符,因为我认为这被认为是“国际”标准,但他们使用逗号,就像在美国/英国一样:

123,456,789
Run Code Online (Sandbox Code Playgroud)

小智 5

001和150分别是代表“世界”和“欧洲”的UN M.49代码。

en_US_POSIX被发明来指代POSIX 库中使用的C(或“空”)区域设置代码。它基本上是美式英语,但有一些特点。

请注意,目前正在热烈讨论最后一个问题。


har*_*ymc 1

您可以在网页\n ICU Locale \xe2\x80\x9cEnglish\xe2\x80\x9d (en)中找到所有这些信息。

\n\n

你会觉得en_US_POSIX被称为“美式英语”,并暗示着各种特定的美国设置,例如日期、数字、货币等等。

\n\n

en_001 \n与 en_US_POSIX 相比仅存在一些细微的变化。

\n\n

至于逗号的使用,请记住这是由美国微软公司的美国开发人员决定的。

\n