Java - получение текущей даты и времени в зависимости от локали (страны) - PullRequest
2 голосов
/ 08 апреля 2011

Я хотел бы получить текущую дату / время в зависимости от локали.Если я передаю объект локали, мне нужно получить соответствующую дату / время страны.

TIA.

Ответы [ 3 ]

1 голос
/ 01 августа 2018

Начиная с Java 8 у вас есть LocalDateTime и ZonedDateTime

Так что вы можете сделать то же самое, что @Babar сказал:

Получить идентификатор зоны

ZoneId zoneId = ZoneId.of("Europe/Brussels");

А потом получите дату и время

ZonedDateTime zonedDateTime = ZonedDateTime.now(zoneId);

0 голосов
/ 08 апреля 2011

Если вы используете Joda Time , то должно работать следующее. (Нет компилятора под рукой)

DateTimeZone tz = DateTimeZone.forID("America/Winnipeg");
DateTime dt = new DateTime(tz);

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

0 голосов
/ 08 апреля 2011
    public static void main(String[] arg){
        String[] timeZoneIDList = TimeZone.getAvailableIDs();
        //List of Time Zones
        for(String timeZoneID:timeZoneIDList){
            System.out.println(timeZoneID);
        }
        //What time is it in Fiji
        Calendar fijiCalendar = Calendar.getInstance(TimeZone.getTimeZone("Pacific/Fiji"));
        System.out.println("Time in Fiji->"+fijiCalendar.get(Calendar.HOUR)+":"+fijiCalendar.get(Calendar.MINUTE));
    }
...