Наиболее распространенные локали для совместимости по всему миру - PullRequest
4 голосов
/ 15 марта 2012

Не думаю, что когда-либо об этом спрашивали в StackOverflow. Я пишу программу на C #, но этот вопрос относится к любому языку программирования под Windows 7.

Поскольку я хочу, чтобы моя программа была совместима с как можно большим количеством стран (но с ограниченным временем), какие 10 самых распространенных локалей нужно проверить? Поскольку я использую C #, это можно найти с помощью:

CultureInfo.CurrentCulture.ToString()

Насколько я знаю, они соответствуют пунктам в разделе: Панель управления -> Регион и язык -> Формат

Легко проверить, будет ли "английский - (Соединенные Штаты)" (что в C # означает "en-US"). Хотя это только один - я ищу еще 5-10 или около того.

В топ-10 также следует включить «разнообразие». Например, если бы все они использовали точку в качестве десятичной точки, это было бы не очень полезно. Я также хотел бы, чтобы хотя бы один использовал запятую в качестве десятичной точки (как это делают Европа, Южная Америка, Россия и другие).

Точно так же я хотел бы, чтобы локали использовали «.», «/» И «-» в качестве разделителя даты.

Так что мой оригинальный вопрос теперь немного сложнее, но потенциально гораздо полезнее. Мне нужны наиболее используемые локали, но с небольшим или умеренным уклоном в сторону разнообразия, чтобы я мог легче обобщать тестирование с гораздо лучшей гарантией того, что они будут работать в непроверенных локалях.

Ответы [ 3 ]

12 голосов
/ 15 марта 2012

После часового поиска лучшее, что я смог придумать, это несколько ссылок, которые содержат «топ-10» на основе их собственных отзывов.Стремясь помочь другим пользователям, я объединил результаты, чтобы получить этот список из 12 лучших, возможно, от умеренных до диких:

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 = Десятичный символ.y = символ группировки цифр.z = разделитель списка.Три числа в рейтинге URL показывают, как высоко в каждом списке была локаль.

Источники:

Одинможно использовать этот URL для преобразования между регионом и кодом C #: http://www.csharp -examples.net / culture-names /

Ниже приведен последний отфильтрованный список, который я лично проверю.Я удалил культуры, которые похожи или почти аналогичны другим культурам (в основном, с точки зрения дат, времени и символов / разделителей; - если бы ваши критерии были чем-то другим, я бы уделил больше внимания приведенному выше списку).Я также добавил бенгальский (Индия) и датский (Дания), которые сильно отличаются от других.

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 = разделитель списка

3 голосов
/ 15 марта 2012

Одним из сложных аспектов глобализации является обработка языков справа налево (RTL).Поэтому я бы включил в ваш список язык, который использует арабский (или иврит), такой как ar-EG «Арабский (Египет)».

Вы также можете воспользоваться подходом псевдо-локали и протестировать, используя .NET-поддерживаемые псевдо-локали , которые демонстрируют особенности, которые могут выявить ошибки глобализации.Их три: «База» (что удобно, так как создает понятный текст, такой как «[Шěđлеśđαỳ !!!], 8 [f [Μäŕςћ !!] ōf 2006»), «Зеркальный» и «Язык Восточной Азии».

0 голосов
/ 15 марта 2012

Если говорить о популярности языков по всему миру:

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

Что касается разнообразия, то это не языковой форум.

...