本地化和十进制数列表

时间:2011-08-25 19:20:15

标签: localization

我正在努力在我们的应用程序中本地化一些字符串,我们的文本看起来像:

Factor f (1.0, 1.2, or 1.5)

在使用逗号作为小数点的语言环境中,这将写为:

Factor f (1,0, 1,2, or 1,5)

也许这不是我习以为常的,但看起来很难以快速阅读。

我也想知道版本号这样的文字。 Firefox 3.5.1会成为Firefox 3,5,1吗?

2 个答案:

答案 0 :(得分:3)

如果我理解你在寻找什么,那么国际化有两件事:

  • 小数分隔符
  • 列表分隔符

显然这些分隔符是紧密耦合的,因此在使用逗号作为小数分隔符的Locale中,列表分隔符必须是其他东西。通常这是一个分号,只有少数Locales使用与逗号或分号不同的区域分隔符。

总结:

在使用作为小数点分隔符的区域设置中,逗号通常用作列表分隔符,因此在某些自由格式文本中,您可能需要{{ 1}}。
在使用逗号作为小数点分隔符的语言环境中,分号通常用作列表分隔符 - Factor f (1.0, 1.2, or 1.5)是您应该期待的。

我不确定你要做什么(技术在建议中很重要)但你可以将格式以及列表分隔符留给翻译人员来决定。在.Net列表分隔符中给出了(不需要请求翻译者输入,只需使用Faktor f (1,0; 1,2; oder 1,5)类的适当属性)。

答案 1 :(得分:2)

很抱歉,但我不知道你的第一个问题。但是,就版本号而言,它们通常是未翻译的。最终用户通常对版本的数值没有什么意义(实际上它们实际上不是数字。3.90< 3.100)。它们只是具有普遍接受的分隔符的离散数字,而不是具有自然“分组/小数”分隔符的自然数。

除了版本号的最终用户体验。众所周知,开发人员使用{major}.{minor}.{revision}作为众所周知的分隔符来解析标准格式.的版本号。

我确实找到this link来讨论你的第一个问题(某种)。我不知道它是多么权威或可信;但它看起来并不可疑。