Internationalization 我应该使用哪种ISO格式来存储用户';s语言代码?

Internationalization 我应该使用哪种ISO格式来存储用户';s语言代码?,internationalization,iso,Internationalization,Iso,我应该使用ISO 639-1(两个字母的缩写)还是ISO 639-2(三个字母的缩写)来存储用户的语言代码?这两种标准都是官方标准,但在开发社区,哪一种是事实上的标准?我认为ISO 639-1更容易记住,并且可能因为这个原因更受欢迎,但这只是一个猜测 我正在建设的网站将为美国、巴西、俄罗斯、中国和英国提供一个单独的网站 我不是专家,但我见过的每个网站都使用ISO 639-1,包括我目前正在工作的网站 这对我们有用 我会选择ISO 639的衍生产品。具体地说,我喜欢这样说:我只见过使用的两个字符的

我应该使用ISO 639-1(两个字母的缩写)还是ISO 639-2(三个字母的缩写)来存储用户的语言代码?这两种标准都是官方标准,但在开发社区,哪一种是事实上的标准?我认为ISO 639-1更容易记住,并且可能因为这个原因更受欢迎,但这只是一个猜测

我正在建设的网站将为美国、巴西、俄罗斯、中国和英国提供一个单独的网站


我不是专家,但我见过的每个网站都使用ISO 639-1,包括我目前正在工作的网站


这对我们有用

我会选择ISO 639的衍生产品。具体地说,我喜欢这样说:

我只见过使用的两个字符的语言代码——所以我建议使用它们,除非你的工作涉及到语言学的某些方面。如果您所做的只是为整个世界定制浏览体验,那么您就不需要3字符代码提供的额外曲目。

ISO 639-1 Alpha-2几乎被普遍使用

例如,它们用于HTTP内容协商。如果你想知道一个国际网站是如何用你的母语自动显示他们的主页的,那就是它的工作原理。(虽然有时有点烦人。例如,我经常看到默认的Apache主页,是德语的,因为网站管理员打开了内容协商,但只把英语内容放进去。)

大多数web浏览器在其“设置”对话框中直接使用它们

大多数操作系统在其设置对话框或配置文件中使用它们

Wikipedia在不同语言版本的服务器名称中使用它们

换句话说:如果你的用户不是以英语为母语的人,他们在配置软件时可能已经遇到过他们,否则他们将无法使用他们的计算机

ISO 639系列的其他成员大多是语言学家感兴趣的。除非你希望耶稣基督本人(ISO 639-2 Alpha-3 code
arc
)访问你的网站,或者可能是克林贡人(Klingons)(
tlh
),否则ISO 639-1的语言比你所希望的要多。

你应该使用语言标记,因为它们已经用于HTTP/HTML/XML和许多其他技术。它们基于包括ISO-639系列在内的多个标准(是的,语言、地区和文化选择并不容易定义)

我写了一篇关于这个问题的更详细的文章。其想法是使用最简单/较短的ISO-639-1代码,并仅在特殊情况下指定更多代码。在文章中,有30种最常用语言的代码,理由是我认为一种选择比另一种更好。 如果您不想阅读整篇文章,这里有一个简短的语言代码列表(不要与国家代码混淆):
ar、cs、da、de、el、en、en-gb、es、fr、fi、he、hu、it、ja、ko、nb、nl、pl、pt、pt-pt、ro、ru、sv、tr、uk、zh、zh-hant

以下几点可能不明显,但应记住:

  • en
    用于
    en-us
    -美式英语,而英式英语则用于
    en-gb
  • pt
    用于
    pt-br
    ,而不是
    pt-pt
    的扬声器要少得多
  • 使用
    zh
    代替
    zh-hans
    zh-CN
  • 使用
    zh-hant
    (繁体中文)代替更具体的代码,如
    zh-hant-TW
    zh-TW

您可以在中找到更多解释。

不要混淆“语言”和“地理位置”。我相信我们只是为这些国家中最常见的口语创建翻译。我需要确保我使用的是正确的语言代码,因为这会影响翻译文件名。你应该使用:
en
pt
ru
zh
en-gb
代码,别忘了检查我的答案以获得完整的解释..我参与的项目,包括Wiktionary和AbiWord在内,对于具有两个字母代码和三个字母代码的语言,使用了两个字母代码。+1我从未见过639-2在任何应用程序中使用。事实上,有了像“cpe”这样的集合代码,您就可以对文档进行编码,而这些文档实际上是无人可读的。你真的希望Cree中有多少文档?URL抛出了一个404。尝试更新它或将相关信息添加到您的答案中。附言:回答很好,+1.>404未找到。639-1涵盖了所有商业上感兴趣的语言,这可能是真的。但有数千种语言未被列入该名单,这些语言有学校和书籍,讲它们的人正在上网。在加入到小型语言的斗争之前,请三思而后行,不要让它们的代码出现在网上;它基本上已被ISO 639-3取代。