Можно ли перечислить доступные часовые пояса по локали в Java? - PullRequest
3 голосов
/ 12 ноября 2009

Мне нужно создать список часовых поясов для отображения для пользователя. Мы хотели бы сузить список в зависимости от локали пользователя.

Если у пользователя есть локаль 'en_US', он, вероятно, не хочет видеть в списке Азию / Ашхабад.

Это выполнимо?

Ответы [ 4 ]

4 голосов
/ 12 ноября 2009

Нет, ты не можешь. Вы можете использовать TimeZone.getAvailableIDs (int rawoffset), чтобы сузить результаты, но тогда вам нужно сохранить карту Locale-> raw offsets.

Кроме того, что произойдет, если ваш пользователь - американец, расположенный в Индии? Разве вы не хотите показывать ему часовой пояс Банглора?

2 голосов
/ 12 ноября 2009
1 голос
/ 12 ноября 2009

Конечно, это выполнимо ... но вам придется написать код.

Вы должны указать ваш часовой пояс с кодом, который фильтрует список часовых поясов. Вы бы заполнили этот фильтр картой локалей с набором часовых поясов для локали.

Тем не менее, как отметил Дэвид, вы столкнетесь с проблемой людей, чей язык не является местом работы или часовым поясом, поэтому будьте готовы решить эту проблему двухуровневым подходом или подобрать «виртуальный язык» откуда-то .

0 голосов
/ 12 ноября 2009

Вы можете найти ЭТО полезным для реализации того, что вы хотите сделать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...