2009-07-09 72 views
1

我正在研究我们的java应用程序的I18n,并且我们已经决定我们只支持一种语言环境中的数据,而用户界面可能支持很多语言。I18n - 数据在一个语言环境中,ui在另一个语言环境中,我使用哪个语言环境进行排序?

我的问题是这样的:

应该整理和使用用户的区域或数据的进行数据的过滤?

Orginally我们认为按照数据的语言环境进行排序是有意义的,但在阅读下面的文章之后,它似乎更有意义地按用户排序。 “

”排序也可以根据语言和文化在字母表中使用的基本顺序而有所不同,例如,瑞典语在字母表中的“Z”后面有一个“Ä”字符,德语也有这个字符,但在字母表中的“A”之后将它分类为“ae”。“http://msdn.microsoft.com/en-us/library/a7zyyk0c.aspx

有没有人有之前做出这个决定?你做了什么决定?意见?

任何人都可以想到需要使用数据的区域设置进行排序或过滤的例子吗?

在此先感谢。

+0

嗯。我冒昧地从这个问题中编辑出'Æ',因为瑞典人确实没有这样的信。然后我意识到错误是微软的,所引用的文字是来自MSDN。如果你喜欢这个报价是bug-for-bug兼容的,那么请随时编辑回来,我想。 – unwind 2009-07-09 12:46:28

回答

2

我想这将取决于使用情况,即什么可以帮助用户最多

如果你与瑞典的名字,瑞典人美国人的工作,它会真正帮助您查看的数据使用瑞典语规则进行排序,因为这是你与互动多数人的期待。

+1

我想99%是你应该过滤/排序的UI区域。这是(最)用户期望的。 – 2009-07-09 13:18:52

0

如果您对数据进行排序只是将其显示在屏幕上,并显示在用户列表中。使用UI语言环境排序。

如果您对数据进行排序以用于存储或排序,请使用数据区域设置。

0

您应该使用用户期望的语言环境进行排序。在你的情况下,根据用户在UI中选择的区域设置进行排序。否则会混淆你的用户。

1

答案显然是“用户期望的” 只知道它是不那么容易猜测用户期望的:-)

对于第一个答案:“美国与瑞典名工作”。我们能否确定美国人熟悉瑞典的排序规则?我想不是。但我们确信他熟悉美国的排序规则。 (如果我想搜索在瑞典的朋友的电话号码,是否意味着我知道他们怎么样了呢?)

一些框架/操作系统可以提供帮助。通常在“控制面板”(或同等设置)中应该使用哪些区域设置进行格式设置或排序。 找出API将检索该信息并使用它。

通常情况下,UI是一个语言的“味道”的局部,不足以决定该怎么做格式化,排序等(想想英文UI。但我可以在澳大利亚,英国或印度,其中一些约定不同)

如果您提供有关您的环境的一些信息,我可能会指出适当的API。