2012-03-14 14 views
3

私はこれまでにStackOverflowで尋ねられたことはないと思います。私はC#プログラムを作成していますが、この質問はWindows 7のプログラミング言語に適用されます。世界的な互換性のために最も一般的なロケール

私は自分のプログラムをできるだけ多くの国と互換性を持たせたいと思っています。テストする最も一般的な上位10のロケール>地域と言語 - - >フォーマット

Aなしのコントロールパネル:私はC#を使用していますので、これは使用して見つけることができます:

CultureInfo.CurrentCulture.ToString() 

を私の知る限りでは、これらは、下の項目に対応します「英語 - (米国)」(C#の下では「en-US」)であることをテストします。 それはただのものです - 私は別の5-10程度を探しています。

トップ10には「バラエティ」も含める必要があります。たとえば、すべて小数点としてピリオドを使用した場合、それほど役に立ちません。私は小数点としてカンマを使用することも望んでいます(ヨーロッパ、南アメリカ、ロシアなどと同じように)。

同様に、 '、'と '/'を日付区切り文字として使用するロケールが必要です。

私の元々の質問はもう少し複雑ですが、潜在的にはもっと便利です。最もよく使われているロケールが必要ですが、バラエティに多少の偏りがあるため、テストされていないロケールでも動作するように、より簡単にテストを一般化することができます。

+0

これはプログラミング上の問題ではありません。これは人口統計の問題です。 – Oded

+0

これはプログラミングにも当てはまりますが、ローカルで正常に動作するように見える他の国ではバグが簡単に発生する可能性があります。他にどこにこの質問を投稿できますか? –

+0

プログラミングに適用することは重要ではない - マーケティングと販売にもあてはまる。私はそれがどこに属しているのか分からないが、それがSOに属しているとは思わない。 – Oded

答えて

10

1時間の検索の後、私が思いつくことができる最高のものは、自分のフィードバックに基づいて「トップ10」を提供するいくつかのリンクです。

C# code URL pos Windows region format  Short date Long time xyz 
en-US 1,1,1  English (United States)  M/D/yyyy  h:mm:ss tt .,, 
zh-CN 2,2,20 Chinese (simplified, PRC) yyyy/M/d  H:mm:ss  .,, 
ru-RU 4,10,5 Russian (Russia)   dd.MM.yyyy H:mm:ss  , ; 
fr-FR 8,5,7  French (France)    dd/MM/yyyy HH:mm:ss  , ; 
es-ES 5,9,10 Spanish (Spain)    dd/MM/yyyy H:mm:ss  ,.; 
en-GB 11,7,2 English (United Kingdom) dd/MM/yyyy HH:mm:ss  .,, 
de-DE 12,3,3 German (Germany)   dd.MM.yyyy HH:mm:ss  ,.; 
pt-BR 10,6,10 Portuguese (Brazil)   dd/MM/yyyy HH:mm:ss  ,.; 
en-CA 14,8,12 English (Canada)   dd/MM/yyyy h:mm:ss tt .,, 
es-MX 13,13,13 Spanish (Mexico)   dd/MM/yyyy hh:mm:ss tt .,, 
it-IT 16,6,- Italian (Italy)    dd/MM/yyyy HH:mm:ss  ,.; 
ja-JP 15,8,30 Japanese (Japan)   yyyy/MM/dd H:mm:ss  .,, 

のx = 10進記号:他のユーザーを支援するための努力で、私は結果はおそらく適度に乱暴に不正確トップ12リストにこれを生成するために結合しました。 y =グループ化記号の桁を指定します。 z =リスト区切り。 URLレーティングの3つの数字は、各リストのロケールの距離を示します。

源:以下 http://www.csharp-examples.net/culture-names/

である:

一領域とC#のコードとの間で変換するために、このURLを使用することができ最終的にフィルタリングされたリスト私は個人的にチェックするでしょう。私は、他の文化と似ているか類似している文化を削除しました(主に日付、時間、記号/区切り記号で - あなたの基準が他のものなら、私は上記のリストにもっと注意を払うでしょう)。私はベンガル(インド)とデンマーク(デンマーク)も追加しましたが、それは他とはかなり異なります。

C# code URL pos Windows region format  Short date Long time xyz 
en-US  1,1,1 English (United States)  M/D/yyyy  h:mm:ss tt .,, 
de-DE  12,3,3 German (Germany)   dd.MM.yyyy HH:mm:ss  ,.; 
fr-FR  8,5,7 French (France)    dd/MM/yyyy HH:mm:ss  , ; 
zh-CN  2,2,20 Chinese (simplified, PRC) yyyy/M/d  H:mm:ss  .,, 
es-ES  5,9,10 Spanish (Spain)    dd/MM/yyyy H:mm:ss  ,.; 
ru-RU  4,10,5 Russian (Russia)   dd.MM.yyyy H:mm:ss  , ; 
en-GB  11,7,2 English (United Kingdom) dd/MM/yyyy HH:mm:ss  .,, 

bn-IN  -,-,- Bengali (India)    dd-MM-yy  HH.mm.ss  .,, 
da-DK  -,-,- Danish (Denmark)   dd-MM-yyyy HH:mm:ss  ,.; 

x =小数点記号です。 y =グループ化記号の桁を指定します。 z =リスト・セパレータ

+0

結果を共有してくれてありがとう!しばらく私を保存しました –

0

我々は、世界中の言語の人気で行く場合:

http://www.wolframalpha.com/input/?i=top+10+most+spoken+language

限り「多様」など、これは言語のフォーラムではありません。

+0

ありがとう、しかし、これは必ずしもその言語のコンピュータユーザーを考慮していません。私が可能な限り少ないロケールでテストすることを可能にする「多様性」バイアスを説明するものではなく、球体全体を一般化するよりよい機会を提供します。最後に、言語そのものではなく、Windowsロケールが必要です。 –

3

グローバリゼーションに対するトリッキーな側面の1つは、右から左(RTL)言語を処理することです。だから、ar-EG「アラビア語(エジプト)」など、あなたのリストにアラビア語(またはヘブライ語)を使用するロケールを含めることにします。

グローバリゼーションのバグを露呈させる可能性のある固有性を示す.NET-supported pseudo-localesを使用して、疑似ロケールのアプローチとテストを行うこともできます。そのうちの3つは、 "Base"( "[Шěđлеśđαỳ!!!]、8¢[Μäŕςћ!!]ōf2006"などのわかりやすいテキストを生成するのに便利です)、 "Mirrored"と "East Asian-language" 。

+0

擬似ロケールを使用する.NETアプリケーションを正常に構築するには、システムを構成する必要があるかもしれないことに注意してください。 http://stackoverflow.com/questions/8577187/getting-visual-studio-to-build-pseudo-language-qps-ploc-satellite-assemblies – Clafou

+0

を参照してくださいありがとうございました。以前は擬似ロケールについて知りませんでした。 –

関連する問題