Преобразование длинного значения даты в текущее значение часового пояса - PullRequest
0 голосов
/ 23 января 2012

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

Ответы [ 2 ]

0 голосов
/ 23 января 2012
I have a date as long value

Вам нужно понимать дату, поскольку длинное значение - это абсолютное значение (UTC) времени в миллисекундах с начала эпохи, т. Е. «1 января 1970 г. 00:00:00». Это значение не содержит информации о часовом поясе. Теперь, если вы хотите отобразить это время в своем текущем часовом поясе, просто сделайте это:

Date dt = new Date(1327303085000l);
System.out.printf("Date: %s%n", dt);

Он печатает:

Date: Mon Jan 23 02:18:05 EST 2012

Обратите внимание, что когда он печатает дату, он автоматически печатает его с моим текущим часовым поясом.

Однако Если вы хотите, чтобы настраиваемое форматирование отображало вашу дату, вы можете взглянуть на класс DateFormat в Java.

0 голосов
/ 23 января 2012

Взгляните на класс java.text.DateFormat. Он предоставляет несколько вариантов вывода текущих данных и времени.

Например, следующий код печатает текущую дату и время в опции длинного формата для локали en_UK: DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, Locale.UK).format(new Date());

Печать: 23 January 2012 08:17:36 CET

Чтобы отобразить любую дату, просто передайте длинное значение конструктору объекта Date. DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, Locale.UK).format(new Date(<your long value here>));

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