2009-07-09 78 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。