假设您希望在数据库中存储用户首选语言环境,您将使用哪个值?
en_US或者en-US?
它们是两种标准,但是您更喜欢在自己的应用程序中使用哪一个?
更新:似乎许多网站使用破折号而不是下划线,例如:
http://zh.wikipedia.org/zh-tw http://www.google.com.hk/search?hl=zh-TW
假设您希望在数据库中存储用户首选语言环境,您将使用哪个值?
en_US或者en-US?
它们是两种标准,但是您更喜欢在自己的应用程序中使用哪一个?
更新:似乎许多网站使用破折号而不是下划线,例如:
http://zh.wikipedia.org/zh-tw http://www.google.com.hk/search?hl=zh-TW
en_US
)。
BCP 47文档实际上指定了en-US
格式,它和Java风格的本地化名称一样常见,甚至更常见。但是在实践中,你会经常看到带有下划线的形式。例如,Java和大多数POSIX类型平台都使用下划线作为它们的语言/区域分隔符。en_US
可能更合适。中文. 这篇文章 是非常有用的。
我不认为en-US
是Java的任何标准。(如果您在某个地方看到了,请添加链接)。
所以只需要使用en_US
。
en-US
是实际标准,而 en_US
是不正确的。我今天处理了这个确切的问题,Nimbus 在 OIDC 配置中发现了 en_GB
而不是 en-GB
,导致抛出了异常。 - SeverityOne
Locale
对象时,你需要以en_US
格式提供所需的区域设置名称(用于货币格式、日期格式等)。虽然将数据存储在en-US
格式中,并在每次需要使用存储的数据时用下划线替换破折号绝对会起作用,但更明智(而且肯定更简单)的做法是将区域设置名称存储在你的应用程序实际使用的格式中... - dkarp{% set currency = "USD" %}{% set format = "en_US" %}
,尝试查找它是否正确。 - Niklas Rosencrantz