假设您要将用户首选项的区域设置存储在数据库中,您将使用哪个值?
en_US或en-US
它们是两个标准,但您更喜欢将哪一个用作自己应用程序的一部分?
已更新:似乎很多网站都使用破折号而非下划线,例如。
http://zh.wikipedia.org/zh-tw http://www.google.com.hk/search?hl=zh-TW
答案 0 :(得分:65)
就个人而言,我会选择“ - ”,只是为了正确。
答案 1 :(得分:21)
如果你正在使用Java,你也可以使用Java locale format(en_US
)。
BCP 47文档实际上确实指定了en-US
格式,如果不比Java风格的区域设置名称更常见,它就是常见的。但实际上你会看到带有下划线的形式。例如,Java和most POSIX-type platforms都使用下划线作为语言/区域分隔符。
所以你们两种选择都不会出错。但鉴于您使用Java编写并且可能针对Unix平台, en_US
可能是可行的方法。
答案 2 :(得分:8)
在Java 7中,有一种新方法Locale.forLanguageTag(String)
,它假定连字符为分隔符。我认为这是规范性的。
查看Locale的文档以获取更多信息。
答案 3 :(得分:5)
EN_US。 This是一本非常有用的读物。
答案 4 :(得分:2)
我认为en-US
根本不是Java的标准。 (如果你在某个地方看到它可以添加一个链接)。
所以只需使用en_US
。