Почему CLDR и Windows имеют различное форматирование валюты?
В мире интернационализации CLDR (Common Locale Data Repository), кажется, является основной базой данных, и, как я узнал, многие системы получают свои данные о локали из этого.
Однако я сравнил данные CLDR и локали в Windows 7, и форматирование валюты во многих случаях отличается.
Например, канадский доллар в локали "Английский (Канада)" имеет следующий формат:
Windows: $1,235.00, -$1,235.00
CLDR...: $1,235.00, ($1,235.00)
Или давайте возьмем испанский (Колумбия) и колумбийский песо:
Windows: $ 1.235,00, ($ 1.235,00)
CLDR...: $1.235,00, -$1.235,00
Обратите внимание на различия в отрицательных числах и интервале. Что я должен думать об этом? Скорее всего, таких отличий больше. Являются ли оба правила форматирования нормальными, или может случиться так, что местные пользователи воспримут их как неправильные?
1 ответ
Хотя это не связано с программированием, я постараюсь ответить на ваш вопрос.
Однажды я спросил во внутреннем списке рассылки CLDR о (неправильных) польских форматах дат и предложил изменить его, предоставив юридическую (польский стандарт) ссылку. Ответ состоял в том, что CLDR пытается следовать национальным стандартам, но иногда было бы неплохо использовать вместо этого широко используемый формат.
На ваш вопрос есть два ответа:
- либо определенный формат используется чаще, чем указанный в национальном стандарте
- или просто есть ошибка в определении - просмотрите систему отслеживания ошибок CLDR, возможно, есть (или было) что-то об этом
Что касается Microsoft, я считаю, что они пытаются следовать национальным правилам и стандартам.