我使用messages.en,messages.de等国际化我的播放应用程序。但是,美国和英国有不同的日期格式偏好。
播放文档有点不清楚,我认为你必须使用2个字母的ISO代码,但似乎3个字母的ISO语言代码也可以起作用。
我在这里找到了eng和enu并将其插入游戏并取得了成功。 http://msdn.microsoft.com/en-us/library/ee825488%28v=cs.20%29.aspx
我无法在官方ISO中找到它们,但我更喜欢使用三字母代码更清晰,因此我知道这是一个功能而不是错误。
一般情况下,有关如何最好地使用日期格式的任何建议吗?将他们与语言选择联系起来是一个好主意还是更好,让用户可以选择独立于语言的选择?
答案 0 :(得分:1)
要设置Play的日期格式,请在配置文件中定义,而不是在此处的消息文件中定义 - http://www.playframework.org/documentation/1.2.4/configuration#date.format
播放说明如下选择2字符代码(语言代码)与语言和国家/地区代码,{ - 3}}
如果要区分,可以使用语言/国家/地区对 变体,例如en_US和en_GB,或zh_CN和zh_TW。但是,是的 意识到某些用户可能只公开一种语言而不是一个国家 他们的接受语言。出于这个原因,你应该总是提供 “裸”语言(例如en)。
例如,如果您的大多数用户来自美国,但您也想这样做 支持英国英语,建议只使用美国的“en” 英语和英语英语“en_GB”。
没有特别提及3个字符代码。但是,Play使用Java Locale对象进行国际化,因此如果查看该对象的http://www.playframework.org/documentation/1.2.4/i18n#languages,则只能看到对2字符代码的引用,而不是3字符代码。因此,依靠2字符代码(或国家和语言代码,例如en_gb
)可能更安全,因为尽管Locale似乎支持3个国家/地区代码,但您无法保证所有代码!