当我在我的 ubuntu 机器上执行 locale 命令时,我得到:
C.UTF-8
en_AG
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
...
为什么有这么多 utf8 ?Wiki 说“UTF-8 是一种可变宽度编码,可以表示 Unicode 字符集中的每个字符”。那么为什么语言环境给出不同的utf8?彼此之间有什么不同?
谢谢
语言环境不仅仅是一种编码
语言环境根据您的语言和国家/地区定制程序。
https://help.ubuntu.com/community/Locale
区域设置,例如日期和时间格式,以及语言、排序顺序等,在称为 locales 的文件中指定。语言环境包含指定日期和时间格式以及其他设置的规则。
http://ccollins.wordpress.com/2009/01/06/how-to-change-date-formats-on-ubuntu/
语言环境要多得多。这些条目中的每一个都是基于 UTF-8 的区域设置,具有更多参数:数字格式(1,234,567
vs 1.234.567
vs 1 234 567
)、货币符号、日期格式、srt 顺序和其他文本数据的本地约定。几乎所有都使用相同的编码,即 UTF-8。